我們知道,東西的标簽是不能亂貼的,比如一件商品,價格标錯了,可能會有損失哦。對于Python GUI程式設計中标簽的使用也不例外,Tkinter中的标簽控件Label常常被使用于顯示文本或圖像,今天我們來詳細看下它的使用方法。
下面開始今天的内容……
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiYTRwQDMwMDM2ETQwEjMDRTRDZzNwEjQ5MTN4EEO4kTN9MnJwImZ3EzMlZGO3MmNhRDOxMWZzUGOjRWYzgDN4cjMwYWPuV2avR3PnVGcq5iZ0kDMzIWZwQTN5IWYyQDMilTOkZzN5M2NwQDZiJzN5gTMiFGNygDMvwFZlVmZvwVbvNmL1RWahJmL0M3YpB3Lc9CX6MHc0RHaiojIsJye.jpeg)
Let's Go!
【使用範圍】
顧名思義,标簽控件Label是用來給控件貼标簽用于展示資訊的,當然,它就可以包含多行文本。
它的使用範圍,主要有以下幾種類型:
辨別資訊
這個很容易了解,比如,制作一個注冊界面,要輸入内容我們需要使用Entry或者Text等控件擷取,但是,我們往往使用Label控件放在這些控件之前,辨別我們需要在文本框内擷取哪些内容。相當于打了一個标簽……
旨在辨別資訊的标簽
圖檔容器
我們知道,Label控件的好處之一是簡單,相對于其它控件,Label的優勢就在于此,使用Label充當一個圖檔容器也是一個不錯的選擇。
它甚至可以被當成一個相框去使用
充當其它控件使用
比如,可以把它當作一個按鈕來使用,對于按鈕的relief屬性設定合理,其實它就是一個按鈕了,當我們定義好它的事件回調函數後,它的功能和按鈕無異。
如果需要它可以做成膠囊按鈕使用
說白了,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()
效果應該是這樣的。如下圖所示。
使用了兩個标簽
比較簡單,相信大家都能看懂,又沒有簡潔的辦法呢?将這些内容放在同一個标簽中?當然可以,看下面的代碼。
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()
将圖檔文字結合到一起了,代碼更少,視覺效果比之前也好一點了!如下圖所示。
使用一個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()
當滑鼠經過标簽時,文字就會在王維的《使至塞上》和王之渙的《登鹳雀樓》兩首詩之間轉變。大家可以試試效果。當然,我們也可以将标簽變成按鈕進行使用。也是通過綁定其事件函數的方式實作,原理基本相同,隻是綁定的回調函數是‘’、''等等類似這種滑鼠單擊或輕按兩下事件,就看自己的需求咯。廢話不多說,喜歡的朋友們可以試試文中的效果。
關注我!後續會有精彩内容呈現
歡迎大家留言并且關注,後續會有精彩内容持續更新。
轉載請注明出處:(百家号:Python高手養成)。