经过大量阅读后,我找不到解决问题的方法。
我使用 Tkinter 和 Python 制作了一个测验程序。我还在各处使用了包几何管理器。窗口不可调整大小,它设置为 960x540,并且所有小部件都使用 X 和 Y 坐标在窗口中精确设置。现在,我想制作全屏选项。但是,当我将其全屏显示时,所有小部件都会移动到左上角(因为它们使用位置管理器设置为 X 和 Y 坐标)。知道当我将窗口变成全屏时小部件如何“拉伸(stretch)”吗? 我知道这可以使用网格管理来完成,但我想使用包管理器。
我没有发布任何代码,因为我认为这没有帮助。如有错误请指正!
PS:抱歉我的英语很奇怪,非常感谢!
最佳答案
如果您不想使用网格,则需要使用地点管理器。很多人建议不要使用它,因为它更复杂,但我喜欢它为您提供的 GUI 控制。
例如,您可以拥有一个始终保持在相对位置并具有相对宽度和高度(与屏幕尺寸相关)的标签
newLabel = tk.Label(root)
newLabel.place(relwidth = 0.5, relheight = 0.2, relx = 0.25, rely = 0.4)
这将创建一个始终为根尺寸宽度一半、根高度 20% 的标签,并且始终位于屏幕中央。
这是关于打包和放置的两个出色的教程,更重要的是,它们是打包和放置提供的选项的一个很好的引用(滚动到页面底部以查看所有选项及其描述)。你也许可以让包做你想做的事,但我坚持在地方。
http://effbot.org/tkinterbook/pack.htm
http://effbot.org/tkinterbook/place.htm
关于Python:调整窗口大小时调整小部件的大小(使用 PLACE 管理器),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41416788/