Python之GUI用户界面Tkinter(一)
要是觉得内容枯燥,您可以点击左下角的播放按钮,让您在音乐的熏陶下愉快的阅读
本文总字数:4310
Label
Label(标签)组件用于在屏幕上显示文本或图像,仅能显示单一字体的文本
•参数
Label(master=None, **options) (class)
**options 组件选项,下方表格详细列举了各个选项的具体含义和用法:
选项
含义
activebackground
1. 设置当 Label 处于活动状态(通过 state 选项设置状态)的背景色
2. 默认值由系统指定activeforeground
1. 设置当 Label 处于活动状态(通过 state 选项设置状态)的前景色
2. 默认值由系统指定anchor
1. 控制文本(或图像)在 Label 中显示的位置
2. "n", "ne", "e", "se", "s", "sw", "w", "nw", 或者 "center" 来定位(ewsn 代表东西南北,上北下南左西右东)
3. 默认值是 "center"background
1. 设置背景颜色
2. 默认值由系统指定bg
跟 background 一样
bitmap
1. 指定显示到 Label 上的位图
2. 如果指定了 image 选项,则该选项被忽略borderwidth
1. 指定 Label 的边框宽度
2. 默认值由系统指定,通常是 1 或 2 像素bd
跟 borderwidth 一样
compound
1.控制 Label 中文本和图像的混合模式
2.默认情况下,如果有指定位图或图片,则不显示文本
3.如果该选项设置为 "center",文本显示在图像上(文本重叠图像)
4.如果该选项设置为 "bottom","left","right" 或 "top",那么图像显示在文本的旁边(如 "bottom",则图像在文本的下方)
5.默认值是 NONE
cursor
1.指定当鼠标在 Label 上飘过的时候的鼠标样式
2.默认值由系统指定
disabledforeground
1.指定当 Label 不可用的时候前景色的颜色
2.默认值由系统指定
font
1. 指定 Label 中文本的字体(注:如果同时设置字体和大小,应该用元组包起来,如("楷体", 20)
2. 一个 Label 只能设置一种字体
3. 默认值由系统指定foreground
1. 设置 Label 的文本和位图的颜色
2. 默认值由系统指定fg
跟 foreground 一样
height
1. 设置 Label 的高度
2. 如果 Label 显示的是文本,那么单位是文本单元
3. 如果 Label 显示的是图像,那么单位是像素(或屏幕单元)highlightbackground
1. 指定当 Label 没有获得焦点的时候高亮边框的颜色
2. 默认值由系统指定,通常是标准背景颜色highlightcolor
1. 指定当 Label 获得焦点的时候高亮边框的颜色
2. 默认值由系统指定highlightthickness
1. 指定高亮边框的宽度
2. 默认值是 0(不带高亮边框)image
1. 指定 Label 显示的图片
2. 该值应该是 PhotoImage,BitmapImage,或者能兼容的对象
3. 该选项优先于 text 和 bitmap 选项justify
1. 定义如何对齐多行文本
2. 使用 "left","right" 或 "center"
3. 注意,文本的位置取决于 anchor 选项
4. 默认值是 "center"padx
1. 指定 Label 水平方向上的额外间距(内容和边框间)
2. 单位是像素pady
1. 指定 Label 垂直方向上的额外间距(内容和边框间)
2. 单位是像素relief
1. 指定边框样式
2. 默认值是 "flat"
3. 另外你还可以设置 "groove", "raised", "ridge", "solid" 或者 "sunken"state
1. 指定 Label 的状态
2. 这个标签控制 Label 如何显示
3. 默认值是 "normal
4. 另外你还可以设置 "active" 或 "disabled"takefocus
1. 如果是 True,该 Label 接受输入焦点
2. 默认值是 Falsetext
1. 指定 Label 显示的文本
2. 文本可以包含换行符
3. 如果设置了 bitmap 或 image 选项,该选项则被忽略textvariable
1. Label 显示 Tkinter 变量(通常是一个 StringVar 变量)的内容
2. 如果变量被修改,Label 的文本会自动更新underline
1. 跟 text 选项一起使用,用于指定哪一个字符画下划线(例如用于表示键盘快捷键)
2. 默认值是 -1
3. 例如设置为 1,则说明在 Button 的第 2 个字符处画下划线width
1. 设置 Label 的宽度
2. 如果 Label 显示的是文本,那么单位是文本单元
3. 如果 Label 显示的是图像,那么单位是像素(或屏幕单元)
4. 如果设置为 0 或者干脆不设置,那么会自动根据 Label 的内容计算出宽度wraplength
1. 决定 Label 的文本应该被分成多少行
2. 该选项指定每行的长度,单位是屏幕单元
3. 默认值是 0
•基本用法
1、文字Label
①静态文字Label
②动态文字Label
1、图片Label
①静态图片Label
②动态图片Label
- 代码
View Codeimport tkinter import time root = tkinter.Tk() root.title('Tkinter') root.geometry('320x300') def LbCon(): s = time.strftime('%H:%M:%S') lb21.configure(text=s) root.after(1000, LbCon) def LbPic(): num = time.strftime('%S')[-1] file = "E:\\Python\\GUI\\" + num + ".png" photo = tkinter.PhotoImage(file=file) lb32.configure(image=photo) lb32.image = photo root.after(1000, LbPic) def LbVar(): s = time.strftime('%H:%M:%S') var.set(s) root.after(1000, LbVar) # Label # 1.静态label lb1 = tkinter.Label(root, text='这是一个静态标签,下面是动态标签', bg='white', fg='blue', font=('黑体', 15)) lb1.pack() # 2.动态label # ①configure lb21 = tkinter.Label(root, text='', fg='red', font=('黑体', 20)) LbCon() lb21.pack() # ②textvariable var = tkinter.StringVar() lb22 = tkinter.Label(root, textvariable=var, fg='blue', font=('黑体', 20)) lb22.pack() LbVar() # 3.图片label # ①静态图片 photo = tkinter.PhotoImage(file="E:\\Python\\GUI\\10.png") lb31 = tkinter.Label(root, text='静态图片', compound='center', font=('黑体',12), image=photo) lb31.pack() # ②动态图片 lb32 = tkinter.Label(root, text='动态图片', compound='center', font=('黑体',12)) lb32.pack() LbPic() root.mainloop()
- 运行结果
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现