一、label组件用于在屏幕上显示文本活图像,Label组件仅能显示单一字体的文本,单文本可以跨越多行。另外还可以为其中的个别字符加上下划线
二、如何使用label组件
使用label组件,你可以指定想要显示的内容
三、简单举例:生成一个窗口
import tkinter as tk app = tk.Tk() #生成顶层窗口 app.title("FishC Demo") #设置标题 #设置label组件,Label是标签的意思,是一个组件,组件放到app下,显示的文字为“我的第二个窗口程序!” theLabel = tk.Label(app,text="我的第二个窗口程序!") theLabel.pack() #用于自动条件组建的尺寸 app.mainloop() #窗口的主视界循环
四、封装类形成的tkinter
import tkinter as tkds class APP: #4、通过构造函数__init__设置主函数root def __init__(self,master): frame = tk.Frame(master) #引入Frame框架,放入master即传进来的顶层窗口root frame.pack(side=tk.LEFT,padx=50,pady=50) #自动调整窗口位置,side按钮靠在窗口的那个位置,padx指x轴的长度,pady指y轴的长度 #设置打招呼的按钮 self.hi_there = tk.Button(frame,text = "打招呼",bg="black",fg="red",command=self.say_hi) self.hi_there.pack() #5、点击打招呼按钮后生成一段打招呼的文字 def say_hi(self): print("互联网的广大朋友们大家好,我是尘封!") root = tk.Tk() #1、创建label窗口即顶层窗口 app = APP(root) #2、实例化并且把顶层窗口的root作为一个参数 root.mainloop() #3、进入主视界循环
四、label用于在屏幕上显示文本和图像,但是仅能显示单一字体的文本,但文本可以显示多行,另外,还可以为其中的个别字符加上下划线
1、label用于显示文本和图像,并且使用双缓冲,如果希望显示的数据用户可以进行操作,使用Canvas组件或许更为合适
2、基本用法:
import tkinter as tk master = tk.Tk() #生成顶层窗口 master.title("设置标题") w = tk.Label(master,text="hi man") w.pack() tk.mainloop()
结果:
如果没有指定Label的大小,那么Label的窗口自适应文本的大小
如果需要改变窗口的大小以及文本的颜色,可以通过:height和width来改变Label的大小,通过foreground(或 fg)和 background(或 bg)来设置Label的前景色和背景色,也可以选择Label中的文本用那种字体显示
3、label多行显示,可以直接使用换行符或者使用wraplength选项来实现,可以使用anchor和justify选项来使的文本如你所希望的显示出来
import tkinter as tk from tkinter import * master = tk.Tk() #生成顶层窗口 master.title("设置标题") longtext = """ 独立寒秋,湘江北去,橘子洲头。 看万山红遍,层林尽染;漫江碧透,百舸争流。 鹰击长空,鱼翔浅底,万类霜天竞自由。 怅寥廓,问苍茫大地,谁主沉浮? 携来百侣曾游。忆往昔峥嵘岁月稠。 恰同学少年,风华正茂;书生意气,挥斥方遒。 指点江山,激扬文字,粪土当年万户侯。 曾记否,到中流击水,浪遏飞舟? """ w = tk.Label(master,text=longtext,font="翩翩体-简, 14",fg="green",height="20",width="40") #w = tk.Label(master,text=longtext,anchor=W, justify=LEFT) 字体靠左显示 w.pack() tk.mainloop()
执行结果:
4、Label显示变量的文本,可以自己填写内容
import tkinter as tk from tkinter import * master = tk.Tk() #生成顶层窗口 master.title("设置标题") v = StringVar() #w = tk.Label(master,textvariable=v,font="翩翩体-简, 14",fg="green",height="20",width="40") #w = tk.Label(master,text=longtext,anchor=W, justify=LEFT) w = Label(master, textvariable=v,fg="green",height="20",width="40").pack() v.set("~新的文本~") tk.mainloop()
5、Label显示图片
from tkinter import *
root = Tk()
textLabel = Label(root,text="您所下载的影片含有未成年人限制内容,请满18周岁后再点击!").pack(side=LEFT)
photo = PhotoImage(file="18.gif")#PhotoImage是图片的字符
imgLabel = Label(root,image=photo).pack(side=RIGHT)#image=photo
mainloop()
执行结果:
文本内容太长,换行:通过 转移符来换行,并且使文本左对齐(通过:justify=LEFT实现)
from tkinter import * root = Tk() root.title("老王下黄片")
textLabel = Label(root,text="您所下载的影片含有未成年人限制内容, 请满18周岁后再点击!", justify = LEFT, padx=10).pack(side=LEFT) photo = PhotoImage(file="18.gif") imgLabel = Label(root,image=photo).pack(side=RIGHT) mainloop()
执行结果:
6、图片显示背景,文字显示在图片上面,关键字:compound
from tkinter import * root = Tk() photo= PhotoImage(file="bg.gif") theLabel = Label(root, text = "跟着尘封学Python", justify = LEFT, image = photo, compound=CENTER, #混合模式,采用compound关键字 font=("华康少女字体",18), fg="white" ).pack() mainloop()
执行结果:
https://fishc.com.cn/thread-59087-1-3.html