先上图

再上代码:

import ttk
from Tkinter import *
root = Tk()
tree = ttk.Treeview(root, columns=('col1','col2','col3'))
tree.column('col1', width=100, anchor='center')
tree.column('col2', width=100, anchor='center')
tree.column('col3', width=100, anchor='center')
tree.heading('col1', text='col1')
tree.heading('col2', text='col2')
tree.heading('col3', text='col3')
def onDBClick(event):
item = tree.selection()[0]
print "you clicked on ", tree.item(item, "values") for i in range(10):
tree.insert('',i,values=('a'+str(i),'b'+str(i),'c'+str(i)))
tree.bind("<Double-1>", onDBClick) tree.pack()
root.mainloop()

说点啥:

  • ttk貌似是python自带的。
  • Treeview本质上是一棵树。
  • 以上是弱化版,也就是我们通常见到的listview
  • 支持事件的绑定,通过tree.bind配合tree.item以及tree.selection()使用,可以针对单击,双击等事件写代码。

关于滚动条:

注意,滚动条是一个控件,而不是treeview的一个属性!

添加滚动条示例代码如下(其中水平滚动条是不会起作用的,原因参考这里):

# -*- coding:utf-8-*-
from Tkinter import *
import ttk
root = Tk()
root.geometry("800x600") tv = ttk.Treeview(root, height =10,columns=('c1','c2','c3'))
for i in range(1000):
tv.insert('',i,values=('a'+str(i),'b'+str(i),'c'+str(i)))
tv.pack() #----vertical scrollbar------------
vbar = ttk.Scrollbar(root,orient=VERTICAL,command=tv.yview)
tv.configure(yscrollcommand=vbar.set)
tv.grid(row=0,column=0,sticky=NSEW)
vbar.grid(row=0,column=1,sticky=NS) #----horizontal scrollbar----------
hbar = ttk.Scrollbar(root,orient=HORIZONTAL,command=tv.xview)
tv.configure(xscrollcommand=hbar.set)
hbar.grid(row=1,column=0,sticky=EW)
root.mainloop()

  

python tkinter用Treeview实现ListView效果的更多相关文章

  1. Python tkinter 实现简单登陆注册 基于B/S三层体系结构,实现用户身份验证

    Python tkinter 实现简单登陆注册 最终效果 开始界面 ​ 注册 登陆 ​ 源码 login.py # encoding=utf-8 from tkinter import * from ...

  2. Python Tkinter基础控件入门实例

    分享一个Python Tkinter基础控件用法的入门例子,包括窗口的显示.显示内置图片.弹出窗口.菜单等. 例子,Python Tkinter基础控件的用法 # -*- coding: utf-8 ...

  3. Python Tkinter 学习成果:点歌软件music

    笔者工作业余时间也没什么爱好,社交圈子也小,主要娱乐就是背着自己带电瓶的卖唱音响到住地附近找个人多的位置唱唱KtV. 硬件上点歌就用笔记本电脑,歌曲都是网上下载的mkv格式的含有两个音轨的视频.因此点 ...

  4. Python Tkinter Entry(文本框)

    Python学习记录--关于Tkinter Entry(文本框)的选项.方法说明,以及一些示例. 属性(Options) background(bg) borderwidth(bd) cursor e ...

  5. python tkinter Listbox用法

    python tkinter组件的Listbox的用法,见下面代码的演示: from tkinter import * root=Tk() v=StringVar() #Listbox与变量绑定' l ...

  6. python Tkinter之Button

    Button小部件是一个标准的Tkinter的部件,用于实现各种按钮.按钮可以包含文本或图像,您可以调用Python函数或方法用于每个按钮. Tkinter的按钮被按下时,会自动调用该函数或方法. 该 ...

  7. WPF中获取TreeView以及ListView获取其本身滚动条的方法,可实现自行调节scoll滚动的位置(可相应获取任何控件中的内部滚动条)

    原文:WPF中获取TreeView以及ListView获取其本身滚动条的方法,可实现自行调节scoll滚动的位置(可相应获取任何控件中的内部滚动条) 对于TreeView而言: TreeViewAut ...

  8. python gui tkinter快速入门教程 | python tkinter tutorial

    本文首发于个人博客https://kezunlin.me/post/d5c57f56/,欢迎阅读最新内容! python tkinter tutorial Guide main ui messageb ...

  9. Python tkinter模块弹出窗口及传值回到主窗口操作详解

    这篇文章主要介绍了Python tkinter模块弹出窗口及传值回到主窗口操作,结合实例形式分析了Python使用tkinter模块实现的弹出窗口及参数传递相关操作技巧,需要的朋友可以参考下 本文实例 ...

随机推荐

  1. How to (seriously) read a scientific paper

    How to (seriously) read a scientific paper Adam Ruben’s tongue-in-cheek column about the common diff ...

  2. acm 选夫婿

    选夫婿1 Time Limit: 1000MS Memory limit: 32768K 题目描述     倾国倾城的大家闺秀潘小姐要选夫婿啦!武林中各门各派,武林外各大户人家,闻讯纷纷前来,强势围观 ...

  3. One Night Ultimate Werewolf Daybreak

    http://beziergames.com/products/replacement-tiles-tokens-for-one-night-ultimate-werewolf http://www. ...

  4. webpack入坑之旅(一)入门安装

    学习一个新的东西,首先第一步就是安装,有时候会遇到各种奇葩的问题 至于什么是webpack我这里就不介绍了,请参考官网:https://github.com/webpack/webpack 安装 前提 ...

  5. php ceil() 函数向上舍入为最接近的整数。

    代码: <?php echo(ceil(0.60); echo(ceil(0.40); echo(ceil(); echo(ceil(5.1); echo(ceil(-5.1); echo(ce ...

  6. LOD

    [教程] 三分钟了解LOD在游戏里面的运用 http://www.narkii.com/club/thread-321290-1.html Unity3d 游戏场景优化 - LOD(Level-of- ...

  7. python版本升级及pip部署方法

    Python版本升级 CentOS 6.3自带的Python版本为2.6,首先需要升级到2.7版本.由于旧版本的Python已被深度依赖,所以不能卸载原有的Python,只能全新安装. 1.下载Pyt ...

  8. redis入侵小结

    redis安装: windows安装包:http://pan.baidu.com/s/1i3jLlC5 下载下来之后,开始安装: redis-server.exe redis.conf: 简单一步,安 ...

  9. Apache日志配置详解(rotatelogs LogFormat)

    logs/error_logCustomLog logs/access_log common--默认为以上部分 修改为如下: ErrorLog "|/usr/sbin/rotatelogs ...

  10. FIFO学习心得

    1,名字.FIFO=First in first out. 2,特点.顺序读入,顺序读出,先入先出. 3,用途.数据缓冲.使两个数据传输速率不一样的设备相匹配. 4,参数. ①,THE WIDTH和T ...