Radiobutton
此小部件实现了一个多选按钮,这是一种向用户提供许多可能选择的方法,并允许用户只选择其中一个。
为了实现此功能,每组radiobutton必须与同一个变量相关联,并且每个按钮必须符号化一个值。 您可以使用Tab键从一个radionbutton切换到另一个radionbutton。
语法 (Syntax)
以下是创建此小部件的简单语法 -w = Radiobutton ( master, option, ... )
参数 (Parameters)master - 这表示父窗口。
options - 以下是此小部件最常用的选项列表。 这些选项可用作以逗号分隔的键值对。Sr.No.选项和说明
1activebackground
鼠标悬停在单选按钮上时的背景颜色。
2activeforeground
鼠标悬停在单选按钮上时的前景色。
3anchor
如果窗口小部件占用的空间大于其所需的空间,则此选项指定单选按钮将位于该空间中的位置。 默认值为anchor = CENTER。
4bg
指标和标签背后的正常背景颜色。
5bitmap
要在单选按钮上显示单色图像,请将此选项设置为位图。
6borderwidth
指标部分周围边框的大小。 默认值为2像素。
7command
每次用户更改此单选按钮的状态时要调用的过程。
8cursor
如果将此选项设置为光标名称( arrow, dot etc. ),则当光标位于单选按钮上时,鼠标光标将更改为该模式。
9font
用于文本的字体。
10fg
用于呈现文本的颜色。
11height
无线电按钮上文本的行数(不是像素数)。 默认值为1。
12highlightbackground
当radiobutton没有焦点时,焦点的颜色突出显示。
13highlightcolor
当radiobutton具有焦点时,焦点的颜色突出显示。
14image
要显示此radiobutton的图形图像而不是文本,请将此选项设置为图像对象。
15justify
如果文本包含多行,则此选项控制文本的对齐方式:CENTER(默认值),LEFT或RIGHT。
16padx
在radiobutton和文本的左侧和右侧留出多少空间。 默认值为1。
17pady
在radiobutton和文本的上方和下方留出多少空间。 默认值为1。
18relief
指定标签周围的装饰边框的外观。 默认值为FLAT; 对于其他价值观。
19selectcolor
设置时的radiobutton的颜色。 默认为红色。
20selectimage
如果在清除单选按钮时使用图像选项显示图形而不是文本,则可以将选择图像选项设置为设置单选按钮时将显示的其他图像。
21state
默认值为state = NORMAL,但您可以将state = DISABLED设置为灰色控件并使其无响应。 如果光标当前在radiobutton上,则状态为ACTIVE。
22text
标签显示在radiobutton旁边。 使用换行符(“ n”)显示多行文本。
23textvariable
要将标签窗口小部件中显示的文本StringVar类的控制变量,请将此选项设置为该变量。
24underline
通过将此选项设置为n,可以在文本的第n个字母下方显示下划线(_),从0开始计数。 默认值为下划线= -1,表示没有下划线。
25value
当用户打开radiobutton时,其控制变量将设置为其当前值选项。 如果控制变量是IntVar ,则为组中的每个单选按钮提供不同的整数值选项。 如果控制变量是StringVar ,则为每个radiobutton提供不同的字符串值选项。
26variable
此radiobutton与组中其他radiobutton共享的控制变量。 这可以是IntVar或StringVar。
27width
标签的宽度(以字符为单位!)。 如果未设置此选项,则标签的大小将适合其内容。
28wraplength
您可以通过将此选项设置为所需的数字来限制每行中的字符数。 默认值0表示仅在换行时断行。
方法 (Methods)Sr.No.方法和描述
1deselect()
清除(关闭)radiobutton。
2flash()
在有效和正常颜色之间闪烁几次无线电按钮,但它保持开始的方式。
3invoke()
您可以调用此方法以获取在用户单击radiobutton以更改其状态时可能发生的相同操作。
4select()
设置(打开)单选按钮。
例子 (Example)
请亲自尝试以下示例 -from Tkinter import *
def sel():
selection = "You selected the option " + str(var.get())
label.config(text = selection)
root = Tk()
var = IntVar()
R1 = Radiobutton(root, text="Option 1", variable=var, value=1,
command=sel)
R1.pack( anchor = W )
R2 = Radiobutton(root, text="Option 2", variable=var, value=2,
command=sel)
R2.pack( anchor = W )
R3 = Radiobutton(root, text="Option 3", variable=var, value=3,
command=sel)
R3.pack( anchor = W)
label = Label(root)
label.pack()
root.mainloop()
执行上述代码时,会产生以下结果 -