Tkinter Label 文本的多行显示

在 Tk004 中,使用 width 和 heigth 来指定控件的大小,如果指定的大小无法满足文本的要求
是,会出现什么现象呢?如下代码:
Label(root,text = 'welcome to jcodeer.cublog.cn',width = 10,height = 3).pack()
运行程序,超出 Label 的那部分文本被截断了,常用的方法是:使用自动换行功能,及当文
本长度大于控件的宽度时,文本应该换到下一行显示,Tk 不会自动处理,但提供了属性:


wraplength: 指定多少单位后开始换行
justify:  指定多行的对齐方式
ahchor: 指定文本(text)或图像(bitmap/image)在 Label 中的显示位置
可用的值:
e/w/n/s/ne/se/sw/sn/center
布局如下图
nw  n        ne
w  center  e
sw   s       se
'''

from Tkinter import *
root = Tk()
#左对齐,文本居中
Label(root,
text = 'welcome to jcodeer.cublog.cn',
bg = 'yellow',
width = 40,
height = 3,
wraplength = 80,
justify = 'left'
).pack()

#居中对齐,文本居左
Label(root,
text = 'welcome to jcodeer.cublog.cn',
bg = 'red',
width = 40,
height = 3,
wraplength = 80,
anchor = 'w'
).pack()
#居中对齐,文本居右


Label(root,
text = 'welcome to jcodeer.cublog.cn',
bg = 'blue',
width = 40,
height = 3,
wraplength = 80,
anchor = 'e'
).pack()
root.mainloop()

'''
输出结果,justify 与 anchor 的区别了:一个用于控制多行的对齐;另一个用于控制整个文本
块在 Label 中的位置
'''



评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值