python中label函数_Python GUI编程之tkinter的常用控件Label的使用

我们知道,东西的标签是不能乱贴的,比如一件商品,价格标错了,可能会有损失哦。对于Python GUI编程中标签的使用也不例外,Tkinter中的标签控件Label常常被使用于显示文本或图像,今天我们来详细看下它的使用方法。

下面开始今天的内容……

0824ab18972bd407c976d99b042ab9540eb3094f.jpeg?token=f0278483adc8e3ec184a6c78fe317fb0&s=5988A8539B1076CE4C210A16030040E6Let's Go!

【使用范围】

顾名思义,标签控件Label是用来给控件贴标签用于展示信息的,当然,它就可以包含多行文本。

它的使用范围,主要有以下几种类型:

标识信息

这个很容易理解,比如,制作一个注册界面,要输入内容我们需要使用Entry或者Text等控件获取,但是,我们往往使用Label控件放在这些控件之前,标识我们需要在文本框内获取哪些内容。相当于打了一个标签……

908fa0ec08fa513d0f653b0342ce72feb0fbd94c.jpeg?token=1bc87dec6ff2e870ee2dc7227f7f3cbd&s=3186FF124D127AC452C1476903007077旨在标识信息的标签

图片容器

我们知道,Label控件的好处之一是简单,相对于其它控件,Label的优势就在于此,使用Label充当一个图片容器也是一个不错的选择。

c2fdfc039245d688af842a39db615a1bd01b24d5.jpeg?token=c044a35b48c5062ef439f464c79d97aa&s=90B17D971767770F5A6810CB03005033它甚至可以被当成一个相框去使用

充当其它控件使用

比如,可以把它当作一个按钮来使用,对于按钮的relief属性设置合理,其实它就是一个按钮了,当我们定义好它的事件回调函数后,它的功能和按钮无异。

728da9773912b31b771f645af9bb117fdbb4e1ff.jpeg?token=4dcfb97623dc959b1ee16026c6e508c9&s=95F65892C2525FDCDE91B23603005061如果需要它可以做成胶囊按钮使用

说白了,tkinter只是个入门级的图形界面库,使用这个库发散下我们的思维,巩固下基础知识也是个不错的选择,此文的目的在于此,并非止于将标签变为图片容器或者其他什么控件……只是给大家提供个思路……

其它几种需要说明的特殊属性情况

1.但是一个标签只能使用一种字体。如果你想要使用不同的字体,请定义不同的标签。

2.你可以允许控件根据可用空间大小换行,也可以在字符串中加入换行符来控制换行。

【实例演示】

我们先来写一首诗,然后在诗中配一张图片,都用标签进行展示。源代码如下:

from tkinter import *

root = Tk()root.title('标签控件演示')root.geometry('800x600+100+100')peom = '白日依山尽\n黄河入海流\n欲穷千里目\n更上一层楼'img = PhotoImage(file='1.png')l_img = Label(root, image=img)l_img.pack(side=RIGHT, expand=YES, fill=BOTH)l_txt = Label(l_img, text = peom, fg='red', bg='#FFC65A', font=('微软雅黑', 18, 'bold'))l_txt.pack(pady=20)root.mainloop()

效果应该是这样的。如下图所示。

d833c895d143ad4bffaa675701a17daaa60f06cc.jpeg?token=18749518be21f6d8db016aad9e6e62bd&s=39B75696C2AD030FFE1EB37103009038使用了两个标签

比较简单,相信大家都能看懂,又没有简洁的办法呢?将这些内容放在同一个标签中?当然可以,看下面的代码。

from tkinter import *

root = Tk()root.title('标签控件演示')root.geometry('800x600+100+100')peom = '白日依山尽\n黄河入海流\n欲穷千里目\n更上一层楼'img = PhotoImage(file='1.png')l_txt_img = Label(root, text = peom, fg='red', image=img,font=('微软雅黑', 18, 'bold'),# 文字覆盖在图像上 compound='center',# 文字居中 anchor='center', )l_txt_img.pack(expand=YES, fill=BOTH)root.mainloop()

将图片文字结合到一起了,代码更少,视觉效果比之前也好一点了!如下图所示。

b151f8198618367a864d4265acd0acd1b11ce5ee.jpeg?token=5ec81481cc0ea6e03645fa1097a5e237&s=3B975786C8AD020FFE9EB7710300C038使用一个Label控件达到同样的效果

下面,我们给标签来点动态内容如何。当鼠标移过标签时,标签的文字内容随之换成另一首诗。源代码如下所示:

from tkinter import *

def changetxt(event):if l_txt_img['text'] == peom: l_txt_img.config({'text': peom2}) else: l_txt_img.config({'text': peom})root = Tk()root.title('标签控件演示')root.geometry('800x600+100+100')peom = '白日依山尽\n黄河入海流\n欲穷千里目\n更上一层楼'peom2 = '单车欲问边,属国过居延。\n征蓬出汉塞,归雁入胡天。\n大漠孤烟直,长河落日圆。\n萧关逢候骑,都护在燕然。'img = PhotoImage(file='1.png')l_txt_img = Label(root, text = peom, fg='red', image=img,font=('微软雅黑', 18, 'bold'),# 文字覆盖在图像上 compound='center',# 文字居中 anchor='center', )l_txt_img.pack(expand=YES, fill=BOTH)

# 绑定鼠标移动事件l_txt_img.bind('', changetxt)

root.mainloop()

当鼠标经过标签时,文字就会在王维的《使至塞上》和王之涣的《登鹳雀楼》两首诗之间转变。大家可以试试效果。当然,我们也可以将标签变成按钮进行使用。也是通过绑定其事件函数的方式实现,原理基本相同,只是绑定的回调函数是‘’、''等等类似这种鼠标单击或双击事件,就看自己的需求咯。废话不多说,喜欢的朋友们可以试试文中的效果。

3b87e950352ac65c1b99fc338451951492138a7e.jpeg?token=70ed4e5ae512a6bf698ad3e7f3564936&s=BDACDF1409024447505DA9DA030050B1关注我!后续会有精彩内容呈现

欢迎大家留言并且关注,后续会有精彩内容持续更新。

转载请注明出处:(百家号:Python高手养成)。

参与评论 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:深蓝海洋 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值