我遇到了让我的 TreeView 填充已创建的顶层窗口的挑战,已尝试 fill=“x”和 fill=“both”,但没有得到结果。有任何建议这样做。
from tkinter import ttk
import tkinter as tk
def my_treeview():
mt = tk.Toplevel()
mt.geometry("1000x580")
tree = ttk.Treeview(mt)
tree.insert("", "0", "item1", text="fill width")
tree.insert("", "1", "item2", text="fill height")
tree.pack(fill="both")
root = tk.Tk()
root.geometry("400x400")
treeview = tk.Button(root, text="open treeview", command=my_treeview).pack()
root.mainloop()
最佳答案
fill="both"
意思是“填满分配给你的所有区域”。它正在这样做。 Treeview 小部件有一定的高度,因此 pack 会为其分配足够的空间。这留下了大量未分配的额外空间。
如果您希望 TreeView 展开以填充所有剩余空间而不仅仅是其需要的空间,请在fill 之外使用
选项。expand
选项
示例:
tree.pack(fill="both", expand=True)
关于python - Tkinter 顶层 : Opening treeview to fit the frame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46474320/