欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Tkinter組件實(shí)現(xiàn)Radiobutton的示例

 更新時(shí)間:2022年01月11日 14:25:18   作者:來(lái)自江南的你  
Radiobutton組件用于實(shí)現(xiàn)多選一的問(wèn)題,本文主要介紹了Tkinter組件實(shí)現(xiàn)Radiobutton的示例,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

Radiobutton(單選按鈕)組件用于實(shí)現(xiàn)多選一的問(wèn)題。Radiobutton 組件可以包含文本或圖像,每一個(gè)按鈕都可以與一個(gè) Python 的函數(shù)或方法與之相關(guān)聯(lián),當(dāng)按鈕被按下時(shí),對(duì)應(yīng)的函數(shù)或方法將被自動(dòng)執(zhí)行。

Radiobutton 組件僅能顯示單一字體的文本,但文本可以跨越多行。另外,還可以為其中的個(gè)別字符加上下劃線(例如用于表示鍵盤快捷鍵)。默認(rèn)情況下,tab 按鍵被用于在按鈕間切換。

每一組 Radiobutton 組件應(yīng)該只與一個(gè)變量相關(guān)聯(lián),然后每一個(gè)按鈕表示該變量的單一值。

何時(shí)使用 Radiobutton 組件?

Radiobutton 組件是用于實(shí)現(xiàn)多選一的問(wèn)題,它幾乎總是成組地被使用,其中所有成員共用相同的變量。

用法

Radiobutton 組件跟 Checkbutton 組件非常相似,為了實(shí)現(xiàn)其“單選”行為,確保一組中的所有按鈕的 variable 選項(xiàng)都使用同一個(gè)變量,并使用 value 選項(xiàng)來(lái)指定每個(gè)按鈕代表什么值:

import tkinter as tk
 
master = tk.Tk()
 
v = tk.IntVar()
v.set(2)
 
tk.Radiobutton(master, text="One", variable=v, value=1).pack(anchor="w")
tk.Radiobutton(master, text="Two", variable=v, value=2).pack(anchor="w")
tk.Radiobutton(master, text="Three", variable=v, value=3).pack(anchor="w")
 
master.mainloop()

如果按鈕(選項(xiàng))比較多,強(qiáng)烈建議您使用以下方式來(lái)初始化 Radiobutton 組件:

import tkinter as tk
 
master = tk.Tk()
 
GIRLS = [
    ("西施", 1),
    ("王昭君", 2),
    ("貂蟬", 3),
    ("楊玉環(huán)", 4)]
 
v = tk.IntVar()
 
for girl, num in GIRLS:
    b = tk.Radiobutton(master, text=girl, variable=v, value=num)
    b.pack(anchor="w")
 
master.mainloop()

上圖是一個(gè)普通的單選按鈕樣式,如果將它的  indicatoron 選項(xiàng)設(shè)置為 False,Radiobutton 的樣式就會(huì)變成普通按鈕的樣式了:

b = tk.Radiobutton(master, text=girl, variable=v, value=num, indicatoron=False)
b.pack(fill="x")

參數(shù)

Radiobutton(master=None, **options) (class)

master -- 父組件

**options -- 組件選項(xiàng),下方表格詳細(xì)列舉了各個(gè)選項(xiàng)的具體含義和用法:

選項(xiàng)含義
activebackground1. 設(shè)置當(dāng) Radiobutton 處于活動(dòng)狀態(tài)(通過(guò) state 選項(xiàng)設(shè)置狀態(tài))的背景色
2. 默認(rèn)值由系統(tǒng)指定
activeforeground1. 設(shè)置當(dāng) Radiobutton 處于活動(dòng)狀態(tài)(通過(guò) state 選項(xiàng)設(shè)置狀態(tài))的前景色
2. 默認(rèn)值由系統(tǒng)指定
anchor1. 控制文本(或圖像)在 Radiobutton 中顯示的位置
2. "n", "ne", "e", "se", "s", "sw", "w", "nw", 或者 "center" 來(lái)定位(ewsn 代表東西南北,上北下南左西右東)
3. 默認(rèn)值是 "center"
background1. 設(shè)置背景顏色
2. 默認(rèn)值由系統(tǒng)指定
bg跟 background 一樣
bitmap1. 指定顯示到 Radiobutton 上的位圖
2. 如果指定了 image 選項(xiàng),則該選項(xiàng)被忽略
borderwidth1. 指定 Radiobutton 的邊框?qū)挾?br />2. 默認(rèn)值由系統(tǒng)指定,通常是 1 或 2 像素
bd跟 borderwidth 一樣
command1. 指定于該按鈕相關(guān)聯(lián)的函數(shù)或方法
2. 當(dāng)按鈕被按下時(shí)由 Tkinter 自動(dòng)調(diào)用對(duì)應(yīng)的函數(shù)或方法
3. 如果不設(shè)置此選項(xiàng),那么該按鈕被按下后啥事兒也不會(huì)發(fā)生
compound1. 控制 Radiobutton 中文本和圖像的混合模式
2. 默認(rèn)情況下,如果有指定位圖或圖片,則不顯示文本
3. 如果該選項(xiàng)設(shè)置為 "center",文本顯示在圖像上(文本重疊圖像)
4. 如果該選項(xiàng)設(shè)置為 "bottom","left","right" 或 "top",那么圖像顯示在文本的旁邊(如 "bottom",則圖像在文本的下方)
5. 默認(rèn)值是 NONE
cursor1. 指定當(dāng)鼠標(biāo)在 Radiobutton 上飄過(guò)的時(shí)候的鼠標(biāo)樣式
2. 默認(rèn)值由系統(tǒng)指定
disabledforeground1. 指定當(dāng) Radiobutton 不可用的時(shí)候前景色的顏色
2. 默認(rèn)值由系統(tǒng)指定
font1. 指定 Radiobutton 中文本的字體
2. 一個(gè) Radiobutton 只能設(shè)置一種字體
3. 默認(rèn)值由系統(tǒng)指定
foreground1. 設(shè)置 Radiobutton 的文本和位圖的顏色
2. 默認(rèn)值由系統(tǒng)指定
fg跟 foreground 一樣
height1. 設(shè)置 Radiobutton 的高度
2. 如果 Radiobutton 顯示的是文本,那么單位是文本單元
3. 如果 Radiobutton 顯示的是圖像,那么單位是像素(或屏幕單元)
4. 如果設(shè)置為 0 或者干脆不設(shè)置,那么會(huì)自動(dòng)根據(jù) Radiobutton 的內(nèi)容計(jì)算出高度
highlightbackground1. 指定當(dāng) Radiobutton 沒(méi)有獲得焦點(diǎn)的時(shí)候高亮邊框的顏色
2. 默認(rèn)值由系統(tǒng)指定,通常是標(biāo)準(zhǔn)背景顏色
highlightcolor1. 指定當(dāng) Radiobutton 獲得焦點(diǎn)的時(shí)候高亮邊框的顏色
2. 默認(rèn)值由系統(tǒng)指定
highlightthickness1. 指定高亮邊框的寬度
2. 默認(rèn)值由系統(tǒng)指定,通常是 1 或 2 像素
image1. 指定 Radiobutton 顯示的圖片
2. 該值應(yīng)該是 PhotoImage,BitmapImage,或者能兼容的對(duì)象
3. 該選項(xiàng)優(yōu)先于 text 和 bitmap 選項(xiàng)
indicatoron1. 指定前邊作為選擇的小圓圈是否繪制
2. 默認(rèn)是繪制的
3. 該選項(xiàng)會(huì)影響到按鈕的樣式,如果設(shè)置為 False,則點(diǎn)擊后該按鈕變成 "sunken"(凹陷),再次點(diǎn)擊變?yōu)?"raised"(凸起)
justify1. 定義如何對(duì)齊多行文本
2. 使用 "left","right" 或 "center"
3. 注意,文本的位置取決于 anchor 選項(xiàng)
4. 默認(rèn)值是 "center"
padx1. 指定 Radiobutton 水平方向上的額外間距(內(nèi)容和邊框間)
2. 默認(rèn)值是 1
pady1. 指定 Radiobutton 垂直方向上的額外間距(內(nèi)容和邊框間)
2. 默認(rèn)值是 1
relief1. 指定邊框樣式
2. 可以設(shè)置 "sunken","raised","groove","ridge" 或 "flat"
3. 如果 indicatoron 選項(xiàng)設(shè)置為 True,則默認(rèn)值是 "flat",否則為 "raised"
selectcolor1. 選擇框的顏色
2. 默認(rèn)值由系統(tǒng)指定
selectimage1. 設(shè)置當(dāng) Radiobutton 為選中狀態(tài)的時(shí)候顯示的圖片
2. 如果沒(méi)有指定 image 選項(xiàng),該選項(xiàng)被忽略
state1. 指定 Radiobutton 的狀態(tài)
2. 默認(rèn)值是 "normal"
3. 另外你還可以設(shè)置 "active" 或 "disabled"
takefocus1. 如果是 True,該組件接受輸入焦點(diǎn)(用戶可以通過(guò) tab 鍵將焦點(diǎn)轉(zhuǎn)移上來(lái))
2. 默認(rèn)值是 False
text1. 指定 Radiobutton 顯示的文本
2. 文本可以包含換行符
3. 如果設(shè)置了 bitmap 或 image 選項(xiàng),該選項(xiàng)則被忽略
textvariable1. Radiobutton 顯示 Tkinter 變量(通常是一個(gè) StringVar 變量)的內(nèi)容
2. 如果變量被修改,Radiobutton 的文本會(huì)自動(dòng)更新
underline1. 跟 text 選項(xiàng)一起使用,用于指定哪一個(gè)字符畫下劃線(例如用于表示鍵盤快捷鍵)
2. 默認(rèn)值是 -1
3. 例如設(shè)置為 1,則說(shuō)明在 Radiobutton 的第 2 個(gè)字符處畫下劃線
value1. 標(biāo)志該單選按鈕的值
2. 在同一組中的所有按鈕應(yīng)該擁有各不相同的值
3. 通過(guò)將該值與 variable 選項(xiàng)的值對(duì)比,即可判斷用戶選中了哪個(gè)按鈕
variable1. 與 Radiobutton 組件關(guān)聯(lián)的變量
2. 同一組中的所有按鈕的 variable 選項(xiàng)應(yīng)該都指向同一個(gè)變量
3. 通過(guò)將該變量與 value 選項(xiàng)的值對(duì)比,即可判斷用戶選中了哪個(gè)按鈕
width1. 設(shè)置 Radiobutton 的寬度
2. 如果 Radiobutton 顯示的是文本,那么單位是文本單元
3. 如果 Radiobutton 顯示的是圖像,那么單位是像素(或屏幕單元)
4. 如果設(shè)置為 0 或者干脆不設(shè)置,那么會(huì)自動(dòng)根據(jù) Radiobutton 的內(nèi)容計(jì)算出寬度
wraplength1. 決定 Radiobutton 的文本應(yīng)該被分成多少行
2. 該選項(xiàng)指定每行的長(zhǎng)度,單位是屏幕單元
3. 默認(rèn)值是 0

方法

deselect()
-- 取消該按鈕的選中狀態(tài)。

flash()
-- 刷新 Radiobutton 組件,該方法將重繪 Radiobutton 組件若干次(在"active" 和 "normal" 狀態(tài)間切換)。
-- 該方法在調(diào)試的時(shí)候很有用,也可以使用此方法提醒用戶激活了該按鈕。

invoke()
-- 調(diào)用 Radiobutton 中 command 選項(xiàng)指定的函數(shù)或方法,并返回函數(shù)的返回值。
-- 如果 Radiobutton 的 state(狀態(tài))"disabled"是 (不可用)或沒(méi)有指定 command 選項(xiàng),則該方法無(wú)效。

select()
-- 將 Radiobutton 組件設(shè)置為選中狀態(tài)。

到此這篇關(guān)于Tkinter組件實(shí)現(xiàn)Radiobutton的示例的文章就介紹到這了,更多相關(guān)Tkinter Radiobutton內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論