Python Tkinter Radiobutton单选按钮


Python Tkinter Radiobutton单选按钮

  1. Radiobutton小部件用于在python应用程序中实现一个多选项。它向用户显示多个选项,用户只能从中选择一个。我们可以将不同的方法与每个单选按钮相关联

  2. 我们可以在radiobuttons上显示多行文本或图像。为了跟踪用户对radiobutton的选择,它与单个变量相关联。每个按钮显示该特定变量的单个值

  3. 语法

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

R1 = Radiobutton(root, text="C", variable=radio, value=1,  command=selection)  
R1.pack( anchor = W )  
  
R2 = Radiobutton(root, text="C++", variable=radio, value=2,  command=selection)  
R2.pack( anchor = W )  
  
R3 = Radiobutton(root, text="Java", variable=radio, value=3,  command=selection)  
R3.pack( anchor = W)  
  
label = Label(root)  
label.pack()  
root.mainloop()
  • 输出


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM