那么到这里,我相信大家对tkinter的简单使用就有一个大致的了解了。但是呢,人不可能一步登天。一个功能美观多样的app界面一定是由非常多的控件一点一点组成的,想要使用tkinter做出一个美观漂亮的ui界面我们还有很多路要走。那么我们以Lable开始,学习对tkinter各类控件的使用
Label组件
Label组件是用于在界面上输出文本内容的标签,在tkinter的ui界面编写中往往是使用得最多的一种,它的使用方式也多种多样下面我们来讲解lable的使用。
import tkinter as tk
# 导入tkinter模块的所有内容
root = tk.Tk()
root.geometry("200x100+150+150")
# 创建一个文本Label对象
textLabel = tk.Label(root, text="学编程就来青灯教育")
textLabel.pack(side=tk.LEFT) root.mainloop()
基本用法与可选属性
(1).基本用法
基本用法:Label(根对象, [属性列表])
根对象:在那个窗体显示,例如主窗体。
属性列表:是可选的属性=属性值组成。
(2).可选属性
可选属性的具体应用
常用属性
text
# 用于显示文本内容
text = "要显示的文本内容"
font
# 用于设置字体与字体大小
# 用法:font=("字体名",大小)
font=("宋体",24)
fg 与 bg
# fg 前景色,即字体的颜色,bg 背景颜色 可用英文名,也可以用十六进制表示的颜色。
fg="red", fg="#00ffff"
width 与 height
# width height 标签的宽度与高度,都是以系统默认的中文的一个字体宽高为单位
width=20, height=5
import tkinter as tk
# 导入tkinter模块的所有内容
root = tk.Tk()
root.geometry("400x400+150+150")
# 创建一个文本Label对象
textLabel = tk.Label(root,
text="学 Python 就来青灯教育", # 设置文字属性
font=("宋体", 24), # 设置字体
fg="red", # 前景色
bg="#00ffff", # 背景色
width=30, # 宽度
height=5) # 高度
textLabel.pack(side=tk.LEFT)
root.mainloop()
案例一
代码:
import tkinter as tk
# 背景色与前景色
root = tk.Tk()
label_1 = tk.Label(root, text='fg="red" bg="#00ffff""', fg="red", bg="#00ffff")
label_1.pack()
# 字体与字体的大小
label_2 = tk.Label(root, text='font=("宋体", 24)', font=("宋体", 24))
label_2.pack()
# 宽度与高度
label_3 = tk.Label(root, text='宽10 高3', bg="yellow", width=10, height=3) label_3.pack()
label_4 = tk.Label(root, text='宽20 高1', bg="yellow", width=20, height=1) label_4.pack()
root.mainloop()
演示效果:
边距与对齐方式
边距:padx与pady
# 文字到边框的距离 padx 与 pady 水平与竖直方向,单位是像素,默认是1像素
padx=2, pady = 1
文本对齐方式:justify
# 可取 "left" ,"right", "center" ,默认是"center"居中对齐,Label 里的文本支持 转移字符 \n \t 等
justify="left"
案例二
代码:
import tkinter as tk
root = tk.Tk()
# 边距
label_5 = tk.Label(root, text='padx pady 默认', bg="blue")
label_5.pack() label_6 = tk.Label(root, text='padx=0, pady=0', bg="blue", padx=0, pady=0)
label_6.pack() label_7 = tk.Label(root, text='padx=10, pady=10', bg="blue", padx=10, pady=10)
label_7.pack() # 对齐方式 label_8 = tk.Label(root, text="学python来青灯教育\n有小姐姐哦")
label_8.pack() label_9 = tk.Label(root, text="学python来青灯教育\n有小姐姐哦", justify="left")
label_9.pack() label_9 = tk.Label(root, text="学python来青灯教育\n有小姐姐哦",justify="right")
label_9.pack()
root.mainloop()
效果演示: