gpt4 book ai didi

python - 居中窗口python tkinter

转载 作者:太空宇宙 更新时间:2023-11-04 01:14:19 25 4
gpt4 key购买 nike

我最近开始在 python 中使用 tkinter,但我无法将窗口居中。我尝试了这个网站上的所有提示,但每当我尝试它们时,窗口就像屏幕中间的一条线。我已经在上面安装了小部件,并且在没有居中的情况下也可以正常工作,但是如果有人可以帮助我解决我的问题,我将不胜感激。这是我迄今为止一直在尝试的。

root = Tk()
root.title("Password")
root.resizable(FALSE,FALSE)

mainframe = ttk.Frame(root, padding="3 3 12 12")
mainframe.grid(column=0, row=0, sticky=(N, W, E, S))
mainframe.columnconfigure(0, weight=1)
mainframe.rowconfigure(0, weight=1)

w = mainframe.winfo_width()
h = mainframe.winfo_height()
ws = root.winfo_screenwidth()
hs = root.winfo_screenheight()
x = (ws/2) - (w/2)
y = (hs/2) - (h/2)
root.geometry('%dx%d+%d+%d' % (w, h, x, y))

最佳答案

您需要使用 winfo_reqwidth()winfo_reqheight(),因为在您调用 winfo_height( )winfo_width()

示例程序:

from tkinter import Tk
from tkinter import ttk

root = Tk()

style = ttk.Style()
style.configure("BW.TLabel", foreground="black", background="white")

l1 = ttk.Label(text="This is the best label in the world", style="BW.TLabel")
l1.pack()

w = l1.winfo_reqwidth()
h = l1.winfo_reqheight()
ws = root.winfo_screenwidth()
hs = root.winfo_screenheight()
x = (ws/2) - (w/2)
y = (hs/2) - (h/2)
print(w, h, x, y)
root.geometry('%dx%d+%d+%d' % (w, h, x, y))

root.mainloop()

关于python - 居中窗口python tkinter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25636804/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com