python-3.x 为什么显式创建此文本时文本没有居中?(Tkinter)

ih99xse1  于 2023-01-03  发布在  Python
关注(0)|答案(3)|浏览(119)

我只需要在窗口顶部居中一个ttk标签。

from tkinter import *
from tkinter.ttk import *

window = Tk()

Label(master=window, text="Welcome to the funny quiz!!!!!!!!!!!", justify="center").place(x=500, y=0)

window.geometry("1000x600")
window.mainloop()

此代码生成以下内容:Window我希望它居中
使其居中的正确方法是什么?

flmtquvp

flmtquvp1#

可以使用anchor='n'将其锚到北方。

Label(master=window, text="Welcome to the funny quiz!!!!!!!!!!!").place(x=500, y=0, anchor='n')

此外,还可以使用“压缩”来锚要居中的文本。

from tkinter import *
from tkinter.ttk import *

window = Tk()

label = Label(master=window, text="Welcome to the funny quiz!!!!!!!!!!!")
label.pack(anchor="center")

window.geometry("1000x600")
window.mainloop()

尽管如此,我还是建议使用网格来对齐对象,以方便您将来添加任何项目。https://docs.python.org/3/library/tkinter.html

xxe27gdn

xxe27gdn2#

相应地改变x轴的数字。。比如,

Label(master=window, text="Welcome to the funny quiz!!!!!!!!!!!", justify="center").place(x=400, y=0)
    • 或者**

只需简单地使用包管理器代替。

Label(master=window, text="Welcome to the funny quiz!!!!!!!!!!!", justify="center").pack()
s3fp2yjn

s3fp2yjn3#

不使用anchor的更简单的方法。只需添加resizable。不要使用place()。最好使用pack()

from tkinter import *
from tkinter import ttk

window = Tk()
window.resizable(True, True)

ttk.Label(master=window, text="Welcome to the funny quiz!!!!!!!!!!!", justify="center").pack(side = TOP, pady = 10)

window.geometry("1000x600")
window.mainloop()

相关问题