天天看點

python中label函數_Python GUI程式設計之tkinter的常用控件Label的使用

我們知道,東西的标簽是不能亂貼的,比如一件商品,價格标錯了,可能會有損失哦。對于Python GUI程式設計中标簽的使用也不例外,Tkinter中的标簽控件Label常常被使用于顯示文本或圖像,今天我們來詳細看下它的使用方法。

下面開始今天的内容……

python中label函數_Python GUI程式設計之tkinter的常用控件Label的使用

Let's Go!

【使用範圍】

顧名思義,标簽控件Label是用來給控件貼标簽用于展示資訊的,當然,它就可以包含多行文本。

它的使用範圍,主要有以下幾種類型:

辨別資訊

這個很容易了解,比如,制作一個注冊界面,要輸入内容我們需要使用Entry或者Text等控件擷取,但是,我們往往使用Label控件放在這些控件之前,辨別我們需要在文本框内擷取哪些内容。相當于打了一個标簽……

python中label函數_Python GUI程式設計之tkinter的常用控件Label的使用

旨在辨別資訊的标簽

圖檔容器

我們知道,Label控件的好處之一是簡單,相對于其它控件,Label的優勢就在于此,使用Label充當一個圖檔容器也是一個不錯的選擇。

python中label函數_Python GUI程式設計之tkinter的常用控件Label的使用

它甚至可以被當成一個相框去使用

充當其它控件使用

比如,可以把它當作一個按鈕來使用,對于按鈕的relief屬性設定合理,其實它就是一個按鈕了,當我們定義好它的事件回調函數後,它的功能和按鈕無異。

python中label函數_Python GUI程式設計之tkinter的常用控件Label的使用

如果需要它可以做成膠囊按鈕使用

說白了,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()

效果應該是這樣的。如下圖所示。

python中label函數_Python GUI程式設計之tkinter的常用控件Label的使用

使用了兩個标簽

比較簡單,相信大家都能看懂,又沒有簡潔的辦法呢?将這些内容放在同一個标簽中?當然可以,看下面的代碼。

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()

将圖檔文字結合到一起了,代碼更少,視覺效果比之前也好一點了!如下圖所示。

python中label函數_Python GUI程式設計之tkinter的常用控件Label的使用

使用一個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中label函數_Python GUI程式設計之tkinter的常用控件Label的使用

關注我!後續會有精彩内容呈現

歡迎大家留言并且關注,後續會有精彩内容持續更新。

轉載請注明出處:(百家号:Python高手養成)。