首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

tkinter -- Message

Message 也是用来显示文本的,用法与 Label 基本一样

创建一个简单的 Message

代码:

代码语言:javascript
复制
import tkinter as tk
root = tk.Tk()
tk.Message(root, text='hello message').pack()
root.mainloop()

结果:

运行程序,可以看到 Hello 之后,Message 显示在它的下一行,这也是 Message 的一个特性。Label 没有

如果不让它换行的话,指定足够大的宽度

代码:

代码语言:javascript
复制
import tkinter as tk
root = tk.Tk()
tk.Message(root, text='hello message', width=100).pack()
root.mainloop()

效果:

使用 aspect 属性指定宽高比例

代码;

代码语言:javascript
复制
import tkinter as tk
root = tk.Tk()
for i in range(10):
    tk.Message(root, text='A'*i, aspect=400).pack()
root.mainloop()

效果:

默认情况向 width/height = 1.5,可以使用 aspect 属性,设置为4,即宽为高的4倍,可以显示10个'A'

Message 绑定变量

代码:

代码语言:javascript
复制
import tkinter as tk
root = tk.Tk()
v = tk.StringVar()
v.set('000')
for i in range(10):
    tk.Message(root, text='A', textvariable=v,).pack()
print(v.get())
root.mainloop()

效果:

绑定变量 v,虽然创建 Message 时使用了 text 来指定 Message 的值,绑定的变量优先级高,可以改变 text指定的值

测试一下 justify 属性

代码:

代码语言:javascript
复制
import tkinter as tk
root = tk.Tk()
for i in ['left', 'right', 'center']:
    tk.Message(root, text='ABC DEF GHI', justify=i, ).pack()
root.mainloop()

结果:

显示的文本自动断行,上下行分别使用了左对齐,右对齐和居中对齐

下一篇
举报
领券