如何在Python中将整个窗口居中?

时间:2019-03-07 11:52:23

标签: python tkinter layout

我用相同的确切代码创建了两个窗口。 在第一个窗口中,文本居中,但是在第二个窗口中,居中。 多谢您的协助! 谢谢

    def order_page(self):
        newwindow = Tk()
        newwindow.title("Take an Order")
        newwindow.geometry('1920x1080')
        newheader = Label(newwindow,
            text="Hello",
            fg="Black",
            bg="Bisque",
            pady=5,
            font="Verdana 10 bold italic",
            width=100,
            height=3)
        newheader.grid()
        newwindow.mainloop()

1 个答案:

答案 0 :(得分:0)

使用网格并希望使小部件居中时,需要定义要居中区域的权重。

这里是一个例子:

from tkinter import *


newwindow = Tk()
newwindow.title("Take an Order")
newwindow.geometry('1920x1080')
# column configure is used to define the weight of a specific column.
newwindow.columnconfigure(0, weight=1)
# if you want to also want the row to expand then use rowconfigure()
# newwindow.rowconfigure(0, weight=1)

newheader = Label(newwindow, text="Hello", fg="Black", bg="Bisque", font="Verdana 10 bold italic", width=100, height=3)
newheader.grid(row=0, column=0, pady=5)

newwindow.mainloop()

结果:

enter image description here

使用rowconfigure(0, weight=1)

enter image description here