我已经广泛搜索了这个问题,但是似乎没人知道。我在python 2.7中创建了一个简单的tkinter窗口(tcl 8.5),并希望将其最大化,就像我点击右上角的“最大化”按钮一样。使用-fullscreen
选项是不是一种选择,因为它删除标题栏。
我尝试了以下方法:
import Tkinter
root = Tkinter.Tk()
root.overrideredirect(True)
# Set window to be size of screen
root.geometry("{0}x{1}+0+0".format(root.winfo_screenwidth(), root.winfo_screenheight()))
问题在于该窗口现在位于Windows任务栏下方,因此某些元素未显示。一个简单的技巧就是将height设置为screenheight-some_constant,或者根据来自操作系统的数据来计算some_constant。但是,这似乎是一个非常丑陋的骇客。
有什么方法可以以干净的方式最大化tkinter中的窗口,只要该窗口位于(Windows)任务栏上方并且仍然具有标题栏?
我知道这是一个老问题,但是我已经在使用Python 2.7.6的XP系统(32位)上使用TCL版本8.5和tk版本8.5测试了以下代码。
码:
import Tkinter as tk
root = tk.Tk()
root.state("zoomed")
root.mainloop()
这确实会启动在主监视器上最大化的窗口。
它确实存在陷阱-我无法使其在另一台显示器上最大化,但是在不覆盖标题栏或任务栏的情况下确实能够可靠地工作。
而当您要保留标题栏时,我将忽略overrideredirect。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句