Radiobutton小部件用于在python应用程序中实现一个多选项。它向用户显示多个选项,用户只能从中选择一个。我们可以将不同的方法与每个无线电按钮相关联。
我们可以在radiobuttons上显示多行文本或图像。为了跟踪用户对radiobutton的选择,它与单个变量相关联。每个按钮显示该特定变量的单个值。
下面给出了使用Radiobutton的语法。
句法
w = Radiobutton(top, options)
| SN |
选项 |
说明 |
| 1 | activebackground |
具有焦点时窗口小部件的背景颜色。 |
| 2 | activeforeground |
具有焦点时窗口小部件文本的字体颜色。 |
| 3 | anchor |
如果窗口小部件包含的空间大于文本要求,则它表示窗口小部件中文本的确切位置。默认值为CENTER。 |
| 4 | bg |
小部件的背景颜色。 |
| 5 | bitmap |
用于显示小部件上的图形。它可以设置为任何图形或图像对象。 |
| 6 | borderwidth |
它表示边框的大小。 |
| 7 | command |
此选项设置为每当更改单选按钮的状态时必须调用的过程。 |
| 8 | cursor |
鼠标指针变为指定的光标类型。它可以设置为箭头,点等。 |
| 9 | font |
它表示窗口小部件文本的字体类型。 |
| 10 | fg |
小部件文本的正常前景色。 |
| 11 | height |
小部件的垂直尺寸。它被指定为行数(不是像素)。 |
| 12 | highlightcolor |
它表示窗口小部件具有焦点时焦点突出显示的颜色。 |
| 13 | highlightbackground |
当窗口小部件没有焦点时,焦点的颜色突出显示。 |
| 14 | image |
如果我们想在radiobutton上显示图像而不是文本,可以将其设置为图像对象。 |
| 15 | justify |
它代表了多行文本的正当性。它可以设置为CENTER(默认),LEFT或RIGHT。 |
| 16 | padx |
小部件的水平填充。 |
| 17 | pady |
小部件的垂直填充。 |
| 18 | relief |
边界的类型。默认值为FLAT。 |
| 19 | selectcolor |
选中时单选按钮的颜色。 |
| 20 | selectimage |
选择时在radiobutton上显示的图像。 |
| 21 | state |
它表示单选按钮的状态。
Radiobutton的默认状态为NORMAL。但是,我们可以将其设置为DISABLED以使radiobutton无响应。 |
| 22 | text |
要在radiobutton上显示的文本。 |
| 23 | textvariable |
它是String类型,表示小部件显示的文本。 |
| 24 | underline |
此选项的默认值为-1,但是,我们可以将此选项设置为要加下划线的字符数。 |
| 25 | value |
每个radiobutton的值在用户打开时分配给控制变量。 |
| 26 | variable |
它是控制变量,用于跟踪用户的选择。它在所有radiobutton之间共享。 |
| 27 | width |
小部件的水平尺寸。它表示为字符数。 |
| 28 | wraplength |
我们可以通过将此选项设置为所需的数字来将文本换行到行数,以便每行只包含该数量的字符。 |
方法
radiobutton小部件提供以下方法。
| SN |
方法 |
说明 |
| 1 | deselect() |
用于转动单选按钮。 |
| 2 | flash() |
用于在有效和正常颜色之间闪烁几次无线电按钮。 |
| 3 | invoke() |
它用于调用Radiobutton状态更改时关联的任何过程。 |
| 4 | select() |
用于选择radiobutton。 |
例
from tkinter import *
def selection():
selection = "You selected the option " + str(radio.get())
label.config(text = selection)
top = Tk()
top.geometry("300x150")
radio = IntVar()
lbl = Label(text = "Favourite programming language:")
lbl.pack()
R1 = Radiobutton(top, text="C", variable=radio, value=1,
command=selection)
R1.pack( anchor = W )
R2 = Radiobutton(top, text="C++", variable=radio, value=2,
command=selection)
R2.pack( anchor = W )
R3 = Radiobutton(top, text="Java", variable=radio, value=3,
command=selection)
R3.pack( anchor = W)
label = Label(top)
label.pack()
top.mainloop()
输出:

第1章 Python简介
