如何在tkinter中滚动到TreeView的底部

时间:2017-02-10 07:52:21

标签: python tkinter treeview scrollbar bottom-sheet

我在Tkinter中使用treeview模仿了一个表格小部件。并添加链接到它的滚动条。问题是我的数据是自动添加到底部的,我希望滚动总是滚动到底部。我知道" text.see(END)"在文本小部件中完美运行,但在我的情况下,treeview小部件不起作用。谢谢你!

from tkinter import *
from tkinter import ttk
root = Tk()
treedata = [('column 1', 'column 2'), ('column 1', 'column 2'), ('column 1',       'column 2'), ('column 1', 'column 2'), ('column 1', 'column 2'), ('column 1',    'column 2'), ('column 1', 'column 2'), ('column 1', 'column 2'), ('column 1', 'column 2'), ('column 1', 'column 2'), ('column 1', 'column 2'), ('column 1', 'column 2'), ('column 1', 'column 2'), ('column 1', 'column 2'), ('column 1', 'column 2'), ('column 1', 'column 222'), ('column 1', 'column 2')]
column_names = ("heading1", "heading2")

scrollbar = Scrollbar(root)
scrollbar.pack(side="right", fill="y")

tree = ttk.Treeview(root, columns = column_names, yscrollcommand =    scrollbar.set)

for x in treedata:
    tree.insert('', 'end', values =x)
for col in column_names: 
    tree.heading(col, text = col)
scrollbar.config(command=tree.yview)
tree.pack()
#tree.see(END)

root.mainloop() 

1 个答案:

答案 0 :(得分:1)

您可以使用tree.yview_moveto(1)显示表格的底部。 yview_moveto方法将您希望在屏幕外显示的总(可滚动)窗口小部件高度的一小部分作为参数。

因此,yview_moveto(0)将显示表格的顶部,yview_moveto(1)显示底部,yview_moveto(0.5)将调整显示,以便隐藏窗口小部件的上半部分。