繁体   English   中英

如何在 Tkinter 中对齐标签中的文本

[英]How to justify text in label in Tkinter

在 Python 中的 Tkinter:我有一个带有不同标签的表。 如何证明标签中的文本对齐? 因为它是一个表格,不同标签中的文字汇集在一起​​!

from tkinter import *
root=Tk()
a=Label(root,text='Hello World!')
a.pack()
a.place(x=200,y=200)
b=Label(root,text='Bye World')
b.pack()
b.place(x=200,y=100)

我想要一些东西来证明标签中的一些文本居中对齐,但这不是我需要的东西,请检查这个:链接

默认情况下,标签中的文本在标签中居中。 您可以使用anchor属性来控制它,也可以使用justify属性。 justify仅在小部件中有不止一行文本时才影响文本。

例如,要使标签内的文本右对齐,您可以使用anchor="e"

a=Label(root,text='Hello World!', anchor="e")

但是请注意,如果标签大到足以容纳文本,这似乎不起作用。 在您的具体示例中,您需要为每个标签提供相同的宽度:

a=Label(..., width=12)
b=Label(..., width=12)

补充一下 Bryan 所说的, LEFT是您正在寻找的常量,以正确设置换行文本的格式。 您还可以对齐RIGHTCENTER (默认值)。

a=Label(root,text='Hello World!', anchor="e", justify=LEFT)

而不是使用 .pack() 我会使用 .grid() http://effbot.org/tkinterbook/grid.htm

网格将允许更好地管理您的组件

在下面找到一个使用和管理的例子:

Label(root, text="First").grid(row=0, sticky=W)
Label(root, text="Second").grid(row=1, sticky=W)

entry1 = Entry(root)
entry2 = Entry(root)

entry1.grid(row=0, column=1)
entry2.grid(row=1, column=1)

checkbutton.grid(columnspan=2, sticky=W)

image.grid(row=0, column=2, columnspan=2, rowspan=2,
           sticky=W+E+N+S, padx=5, pady=5)

button1.grid(row=2, column=2)
button2.grid(row=2, column=3)

你最终会使用网格选项 padx="x" 来“证明”你的标签

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM