摘要:已獲原作者授權(quán)原系列地址單選按鈕是一種可在多個(gè)預(yù)先定義的選項(xiàng)中選擇出一項(xiàng)的控件單選按鈕可顯示文字或圖片顯示文字時(shí)只能使用預(yù)設(shè)字體該控件可以綁定一個(gè)函數(shù)或方法當(dāng)單選按鈕被選擇時(shí)該函數(shù)或方法將被調(diào)用單選按鈕這個(gè)名字來源于收音機(jī)上的調(diào)頻按鈕這些按
已獲原作者授權(quán). 原系列地址: Python TkinterRadio Buttons
單選按鈕是一種可在多個(gè)預(yù)先定義的選項(xiàng)中選擇出一項(xiàng)的 Tkinter 控件. 單選按鈕可顯示文字或圖片. 顯示文字時(shí)只能使用預(yù)設(shè)字體. 該控件可以綁定一個(gè) Python 函數(shù)或方法, 當(dāng)單選按鈕被選擇時(shí), 該函數(shù)或方法將被調(diào)用.
單選按鈕 (Radio Button) 這個(gè)名字來源于收音機(jī) (Radio) 上的調(diào)頻按鈕, 這些按鈕用來選擇特定波段或預(yù)設(shè)電臺(tái). 如果一個(gè)按鈕被按下, 其他同類的按鈕就會(huì)彈起, 即同時(shí)只有一個(gè)按鈕可被按下.
一組單選按鈕控件和同一個(gè)變量關(guān)聯(lián). 點(diǎn)擊其中一個(gè)單選按鈕將把這個(gè)變量設(shè)為某個(gè)預(yù)定義的值.
from Tkinter import * root = Tk() v = IntVar() Label(root, text="""Choose a programming language:""", justify = LEFT, padx = 20).pack() Radiobutton(root, text="Python", padx = 20, variable=v, value=1).pack(anchor=W) Radiobutton(root, text="Perl", padx = 20, variable=v, value=2).pack(anchor=W) mainloop()
上面代碼輸出如下窗口:
很多情況下, 單選按鈕項(xiàng)目將不止是兩項(xiàng). 在選項(xiàng)很多時(shí), 逐個(gè)生成單選項(xiàng)的方法就顯得太笨了. 解決辦法如下例中所示, 我們預(yù)先定義了一個(gè) list, 其元素中包含了按鈕文本及其對(duì)應(yīng)的選項(xiàng)值. 這樣我們就可以用一個(gè)循環(huán)來建立這組單選按鈕了.
from Tkinter import * root = Tk() v = IntVar() v.set(1) # initializing the choice, i.e. Python languages = [ ("Python",1), ("Perl",2), ("Java",3), ("C++",4), ("C",5) ] def ShowChoice(): print v.get() Label(root, text="""Choose your favourite programming language:""", justify = LEFT, padx = 20).pack() for txt, val in languages: Radiobutton(root, text=txt, padx = 20, variable=v, command=ShowChoice, value=val).pack(anchor=W) mainloop()
上例運(yùn)行后將顯示如下窗口:
除了使用默認(rèn)的空心圓形作為選項(xiàng)條目, 我們也可以用一個(gè)文本框來展示選項(xiàng). 將 indicatoron 選項(xiàng)設(shè)置為 0 即可達(dá)到該目的: 這表示單選按鈕不會(huì)有額外的單選指示器.
我們將上例中 Radiobutton 的創(chuàng)建代碼修改如下:
Radiobutton(root, text=txt, indicatoron = 0, width = 20, padx = 20, variable=v, command=ShowChoice, value=val).pack(anchor=W)
在上面的代碼中, 我們使用了 indicatoron 參數(shù) 和 width 參數(shù). 上例運(yùn)行顯示如下:
全系列:
[譯][Tkinter 教程01] 入門: Label 控件
[譯][Tkinter 教程02] Message 控件
[譯][Tkinter 教程03] Button 控件
[譯][Tkinter 教程04] Variable 類
[譯][Tinkter 教程05] Radiobutton 控件
[譯][Tkinter 教程06] Checkbox 控件
[譯][Tkinter 教程07] Entry 控件
[譯][Tkinter 教程08] Canvas 圖形繪制
[譯][Tkinter 教程09] Scale 控件
[譯][Tkinter 教程10] Text 控件
[譯][Tkinter 教程11] 對(duì)話框和消息框
[譯][Tkinter 教程12] 布局管理 (Pack Place Grid)
[譯][Tkinter 教程13] Mastermind 游戲
[譯][Tkinter 教程14] menu 菜單
[譯][Tkinter 教程15] event 事件綁定
譯者水平有限, 如有疏漏, 歡迎指正.
已獲得原作者授權(quán). 原文地址: Radiobuttons
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/41484.html
摘要:已獲原作者授權(quán)原系列地址類有些控件比如控件控件等可以通過傳入特定參數(shù)直接和一個(gè)程序變量綁定這些參數(shù)包括這種綁定是雙向的如果該變量發(fā)生改變與該變量綁定的控件也會(huì)隨之更新這些控制變量和一般的變量一樣都是用來保存某個(gè)值的但一般的變量不能被傳遞給或 已獲原作者授權(quán). 原系列地址: Python Tkinter Variable 類 有些控件 (比如 Entry 控件, Radiobutton...
摘要:已獲原作者授權(quán)原系列地址簡(jiǎn)介控件允許用戶在多個(gè)選項(xiàng)中選擇多項(xiàng)則只允許用戶選擇一項(xiàng)通常會(huì)顯示為一個(gè)空白的方框表示未被選中或者方框中有一個(gè)對(duì)號(hào)或號(hào)表示被選中一個(gè)對(duì)該選項(xiàng)的簡(jiǎn)短描述會(huì)和選擇框一同顯示的狀態(tài)會(huì)因點(diǎn)擊而改變這個(gè)點(diǎn)擊可能來自鼠標(biāo)也可能來 已獲原作者授權(quán). 原系列地址: Python Tkinter 簡(jiǎn)介 Checkbox 控件允許用戶在多個(gè)選項(xiàng)中選擇多項(xiàng). Radiobutton...
摘要:已獲原作者授權(quán)原系列地址簡(jiǎn)介控件是一種標(biāo)準(zhǔn)控件用來展現(xiàn)不同樣式的按鈕控件被用以和用戶交互比如按鈕被鼠標(biāo)點(diǎn)擊后某種操作被啟動(dòng)和控件類似按鈕可以展示圖片或者文字不同的是控件可以指定字體控件只能使用單一的字體上的文字可以多行顯示可以將一個(gè)函數(shù)或方 已獲原作者授權(quán). 原系列地址: Python Tkinter 簡(jiǎn)介 Button 控件是一種標(biāo)準(zhǔn) Tkinter 控件, 用來展現(xiàn)不同樣式的按鈕...
摘要:已獲原作者授權(quán)原系列地址簡(jiǎn)介一提到這個(gè)詞很多人首先想到的是餐館里的菜單雖然餐館菜單和計(jì)算機(jī)程序中的菜單看起來一點(diǎn)也不像但他們確實(shí)有很多共同點(diǎn)在餐館中菜單列舉了所有菜品和飲料在計(jì)算機(jī)程序中菜單通過圖形界面展示了應(yīng)用程序可用的命令和功能在用戶界 已獲原作者授權(quán). 原系列地址: Python Tkinter 簡(jiǎn)介 一提到menu這個(gè)詞, 很多人首先想到的是餐館里的菜單. 雖然餐館菜單和計(jì)算...
摘要:已獲原作者授權(quán)原系列地址控件控件用來展示一些文字短消息和控件有些類似但在展示文字方面比要靈活比如控件可以改變字體而控件只能使用一種字體它提供了一個(gè)換行對(duì)象以使文字可以斷為多行它可以支持文字的自動(dòng)換行及對(duì)齊這里要澄清一下前面提到的控件可以改變 已獲原作者授權(quán). 原系列地址: Python Tkinter Message 控件 Message 控件用來展示一些文字短消息. Message...
閱讀 2654·2021-11-22 12:01
閱讀 1178·2021-11-15 11:37
閱讀 3775·2021-09-22 14:59
閱讀 1842·2021-09-04 16:45
閱讀 1449·2021-09-03 10:30
閱讀 1116·2021-08-11 11:18
閱讀 2542·2019-08-30 10:53
閱讀 2079·2019-08-29 15:13