How To Justify Text In Label In Tkinter
Solution 1:
By default, the text in a label is centered in the label. You can control this with the anchor
attribute, and possibly with the justify
attribute. justify
only affects the text when there is more than one line of text in the widget.
For example, to get the text inside a label to be right-aligned you can use anchor="e"
:
a=Label(root,text='Hello World!', anchor="e")
Note, however, this will appear to have no effect if the label is exactly big enough to hold the text. In your specific example, you would need to give each label the same width:
a=Label(..., width=12)
b=Label(..., width=12)
Solution 2:
To add on to what Bryan said, LEFT
is the constant you are looking for to correctly format your wrapped text. You can also justify to the RIGHT
or CENTER
(the default).
a=Label(root,text='Hello World!', anchor="e", justify=LEFT)
Solution 3:
instead of using .pack() i would use .grid() http://effbot.org/tkinterbook/grid.htm
grid will allow better management of your components
find bellow an example of usage and management:
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)
you would endup using the grid option padx="x" to "justify" your labels
Post a Comment for "How To Justify Text In Label In Tkinter"