目录
Label()方法可以用于在窗口内创建文字或图像标签,语法格式如下:
Label(父对象,options,……)
Label()方法的第一个参数是父对象,表示这个标签将建立在哪一个父对象内,以下是常用的options参数:
anchor 如果空间大于所需时,控制标签的位置,默认是CENTER(居中)
bg/background 背景色彩
bitmap 使用默认图标当做标签内容
borderwidth/bd 标签边界宽度,默认是1
compound 可以设置标签内含图像和文字时彼此的位置关系
cursor 当鼠标光标在标签上方的外形
fg/foreground 前景色彩
font 可选择字形、字体样式和大小
height 标签高度,单位是字符
image 标签以图像样式呈现
jusify 存在多行文本时最后一行的对齐方式,可取值有LEFT/CENTER/PIGHT(靠左/居中/靠右),默认是居中对齐
padx/pady 标签文字与标签区间的间距,单位是像素
relief 默认是relief=False,可由此控制标签的外框
text 标签内容,若有“\n”则可输入多行
textvariable 可以设置标签以变量方式显示
underline 默认是underline=-1,可以设置第几个文字有下滑线,从0开始算起,-1表示无下划线
width 标签宽度
wraplength 文本到多少宽度后换行,单位是像素
建立一个标签,内容是“I love python”
import tkinter as tk
root = tk.Tk()
root.title("小胡编程")
label = tk.Label(root,text="I love python")
label.pack() #包装和定位组件
print(type(label)) #传回label数据类型
root.mainloop()
结果如下:
可见数据类型为<class 'tkinter.Label'>
但如果改成这样:
import tkinter as tk
root = tk.Tk()
root.title("小胡编程")
label = tk.Label(root,text="I love python").pack()
print(type(label)) #传回label数据类型
root.mainloop()
其结果就变成了:
数据类型竟然变成了<class 'NoneType'>,空类型,但创建的窗口一模一样。此处要留意两种不同的创建方法,会对以后的操作产生影响,如果要进行对label的进一步操作建议使用第一种方法,不为别的,就是稳。(小声告诉你,使用第二种方法进一步操作会报错哦!)
看不到完整的窗口标题。,可以拖拽窗口看到完整的窗口标题
实践二 背景和前景参数
fg/foreground是可以进行前景色的设置的,而bg/background则可以进行背景色的设置,不墨迹了,直接上代码:
import tkinter as tk
root = tk.Tk()
root.title("小胡编程")
label = tk.Label(root,text="I love python",
fg="red",bg="yellow")
label.pack()
root.mainloop()
看结果:
fg和bg分别是foreground和background的缩写,这里就不一一展示了,效果都一样。
实践三 height和width参数
height可以设置widget控件(此例是标签)的高度,单位是字符,而width可以设置控件的宽度,单位也是字符。
Let's me look look:
import tkinter as tk
root = tk.Tk()
root.title("小胡编程")
label = tk.Label(root,text="I love python",
fg="red",bg="yellow",
height=3,width=15)
label.pack()
root.mainloop()
结果是:
并不是所有控件都有这个参数,ttk里的一些控件就没有哦!
实践四 anchor参数
这个参数我并不是经常用到,但他真的很有用
Anchor是指标签文字在标签的输出位置,默认是居中的,参数图如下:
看代码,文字从左上角输出jiji
import tkinter as tk
root = tk.Tk()
root.title("小胡编程")
label = tk.Label(root,text="I love python",
fg="red",bg="yellow",
height=3,width=15,
anchor="nw")
label.pack()
root.mainloop()
结果:
Anchor的参数设置也可以使用内建大写常数,例如:nw使用NW,n使用N等等,当使用大写是,要省去引号。这里就不一一列举了,看下一个。
实践五 wraplength参数
wraplength参数可以设置标签中的文字在多少宽度后换行,注意:单位是像素,像素,像素
上才艺:
import tkinter as tk
root = tk.Tk()
root.title("小胡编程")
label = tk.Label(root,text="I love python",
fg="red",bg="yellow",
height=3,width=15,
anchor="nw",
wraplength=40)
label.pack()
root.mainloop()
结果:
实践六 font参数
font这个参数非常有用(没有用我也不会讲),可以用来设置字体的大小,字形,字号
(1)字形family:如Helvetiva、Times等,基本上在Word上有的这里都有
(2)字号size:单位是像素
(3)weight:例如bold、normall
(4)slant:例如italic、roman,如果不是italic则是roman
(5)underline:例如True、False
(6)overstrike:例如True、False
(3)、(4)、(5)比较少用并且无法显示字形,建议有兴趣的上机测试一下
代码:
import tkinter as tk
root = tk.Tk()
root.title("小胡编程")
label = tk.Label(root,text="I love python",
fg="red",bg="yellow",
height=3,width=15,
font="Helvetic 20 bold")
label.pack()
root.mainloop()
结果:
另外font还可以这样写:
font=("Helvetic",20,"bold")
实践七 justify参数
justify是用来设置多行文字输出是最后一行文字是位置,默认是居中
先看默认效果,代码如下:
import tkinter as tk
root = tk.Tk()
root.title("小胡编程")
label = tk.Label(root,text="(。_ 。) ✎_学习计划走起",
fg="red",bg="yellow",
wraplength=40)
label.pack()
root.mainloop()
效果:
再来看看靠左对齐:
仔细观察,走起的位置发生了变化哦。
justify的参数有(left/center/right)靠左/居中/靠右
本章小结:因为太多了(其实是我懒),分三张写这是第一张。如果有错误请指正,如果对你有用的话请给我点的赞,谢谢,谢谢,谢谢。一键三连
(附:下一章链接:https://blog.csdn.net/h20050621/article/details/119740569)