Label小部件不换行。 Message小部件将换行文本,但强制它大致为方形。这是一个例子。
from Tkinter import *
root = Tk()
root.title("hello")
Message(root, text=48*'xxxxx ').grid(row=0, column=0, columnspan=3)
Label(root, text='Name:').grid(row=1, column=0)
Entry(root, width=50).grid(row=1, column=1)
Button(root, text="?").grid(row=1, column=2)
Button(root, text="Left").grid(row=2, column=0)
Button(root, text="Center").grid(row=2, column=1)
Button(root, text="Right").grid(row=2, column=2)
root.mainloop()
我知道我可以使用aspect=700
来改变形状,但是这样的硬编码就是我想要避免的。
答案 0 :(得分:28)
Tkinter标签小部件确实换行。只是默认设置是不包装。要使标签上的文本换行设置“wraplength”参数,其单位为屏幕单位,因此请尝试wraplength = 50并根据需要进行调整。您还需要将“对齐”设置为LEFT,RIGHT或CENTER。希望有所帮助。
答案 1 :(得分:5)
welcomenote = Label(root, text="Your long text", font="helvetica 14",
wraplength=300, justify="center")
welcomenote.pack()
答案 2 :(得分:0)
尝试以下操作:
tk.Label(root, textvariable=text, wraplength=500).pack()
这里500是将字符放到下一行之前的像素量。