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

use*_*575 2 python treeview tkinter scrollbar bottom-sheet

我在 Tkinter 中使用树视图模仿了一个表格小部件。并添加一个链接到它的滚动条。问题是因为我的数据是按分钟自动添加到底部的,并且我希望滚动始终滚动到底部。我知道“text.see(END)”在文本小部件中完美工作,但就我而言,树视图小部件不起作用。先谢谢了!

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() 
Run Code Online (Sandbox Code Playgroud)

j_4*_*321 7

您可以用来tree.yview_moveto(1)显示表格的底部。该yview_moveto方法将您想要从屏幕到顶部的总(可滚动)小部件高度的一部分作为参数。

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