tkinter - Tkinter 树视图调整树视图的大小以适合屏幕
问题描述
我在让树视图调整到 tkinter 窗口的大小时遇到了一个小问题,并且似乎无法从谷歌得到答案。下面的代码工作正常,除了它在“屏幕”内似乎有固定大小。我尝试了各种版本的“填充”和“拉伸”,但我似乎无法做到正确。任何人都可以为我阐明这一点吗?
代码:
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", width=85, anchor='e')
box.column("F-100", width=85, anchor='e')
box.column("F-24", width=85, anchor='e')
box.column("POS", width=75, anchor='center')
box.column("NEG", width=75, anchor='center')
box.column("NULL", width=75, anchor='center')
box.column("VOLUME", width=90, anchor='center')
box.column("VOLUME-FUT", width=90, 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)
希望您发现此答案对您有所帮助,如果有任何错误或疑问,请告诉我。
干杯
推荐阅读
- android - 从kotlin中的地图获取价值
- javascript - jquery过滤具有多个条件的类别
- python - 嵌套列表中的值的总和
- reactjs - 如何根据 ReactJS 中的道具从我的资产文件夹中动态加载图像?
- javascript - 如何为 JavaScript 中的特定名称动态计算对象数组中的字段
- java - 启动使用 jpackage 部署并安装的 JavaFx 应用程序时找不到 JVM
- angular - AWS Code Pipeline 构建失败,模块构建失败
- pine-script - 如何在 pinescript 中计算 EPS q/q
- api - 如何获取 IBM Cloud Object Storage 上具有访问密钥 ID 和秘密访问密钥的文件的直接 URL
- html - 未选中汉堡按钮时如何隐藏菜单?