如何解决Tkinter Treeview调整树视图的大小以适合屏幕
我在让Treeview调整到tkinter窗口的大小时遇到了一个小问题,似乎无法从Google得到答案。下面的代码工作正常,除了“屏幕”内部似乎固定大小。我已经尝试过各种版本的“填充”和“拉伸”,但似乎无法正确完成。谁能为我阐明一下?
代码:
import tkinter as tk
from tkinter import ttk
screen = tk.Tk()
screen.title('This One')
screen.geometry('890x400')
cols = ('TOKEN','F-500','F-250','F-100','F-24','POS','NEG','NULL','VOLUME','VOLUME-FUT','RPP')
box = ttk.Treeview(screen,columns=cols,show='headings')
for col in cols:
box.heading(col,text=col)
box.grid(row=1,column=0,columnspan=2)
box.column("TOKEN",width=95)
box.column("F-500",width=85,anchor='e')
box.column("F-250",anchor='e')
box.column("F-100",anchor='e')
box.column("F-24",anchor='e')
box.column("POS",width=75,anchor='center')
box.column("NEG",anchor='center')
box.column("NULL",anchor='center')
box.column("VOLUME",width=90,anchor='center')
box.column("VOLUME-FUT",anchor='center')
box.column("RPP",width=45,anchor='center')
showScores = tk.Button(screen,text="Update",width=15).grid(row=10,column=1)
closeButton = tk.Button(screen,text="Close",width=15,command=exit).grid(row=10,column=0)
screen.mainloop()
这可能是一件非常简单的事情,但是我看不到!
谢谢
关闭
解决方法
尝试先说一遍:
screen.grid_rowconfigure(1,weight=1)
screen.grid_columnconfigure(0,weight=1)
并确保还对树视图说sticky='nsew'
,例如:
box.grid(row=1,column=0,columnspan=2,sticky='nsew') #say sticky='nsew'
这是适合屏幕的意思吗?当您调整窗口大小时,这将确保树形视图始终适合屏幕。
另一种方法是禁用整个窗口的大小,方法是说screen.resizable(0,0)
希望您发现此答案有帮助,请让我知道是否有任何错误或疑问。
欢呼
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。