我已经做了所有可能的研究,但找不到答案。 所以我的问题是:
如何使我的窗口在任务栏不与其重叠的情况下占据最大尺寸? 我不希望我的部分窗口位于任务栏下方。
我尝试使用 winfo_screenwidth 和 winfo_screen_height,但这和 root.state("zoomed") 似乎都不起作用:它们都将窗口大小调整为屏幕大小,而我想要屏幕尺寸减去任务栏。
编辑:看到我的问题看起来有多困惑: 设 h 是我的显示器屏幕的高度(以像素为单位),h_taskbar 是任务栏的高度(以像素为单位)。我怎样才能让我的窗口以 (h - h_taskbar) 作为高度?(我不知道 h_taskbar !)
请您参考如下方法:
如果你想将全屏属性设置为True,很简单:
root = Tk()
root.attributes('-fullscreen', True)
但是,它不显示标题栏。如果你想让它保持可见,你可以使用 geometry() 调整 Tk 元素的大小。方法:
root = Tk()
w, h = root.winfo_screenwidth(), root.winfo_screenheight()
root.geometry("%dx%d+0+0" % (w, h))
与 winfo_width()和 winfo_height()您可以获得宽度和高度或窗口,也可以将事件处理程序绑定(bind)到 <Configure>事件:
def resize(event):
print("New size is: {}x{}".format(event.width, event.height))
root.bind("<Configure>", resize)
