wxpython中文教程之核心部件wx.radiobutton

发布时间:2020-08-20编辑:脚本学堂
有关wxpython核心部件wx.radiobutton的用法,通过带有 wx.rb_group 样式的这组选项中的第一个来定义出该组单选按钮。

WX.RADIOBUTTON是一个让用户从一组选项中选择单独一项的部件。

通过带有 wx.RB_GROUP 样式的这组选项中的第一个来定义出该组单选按钮
位于拥有该样式的第一个单选按钮之后的其它按钮则会被添加到第一个按钮的功能组 (function group) 中。
而通过声明另一个具有 wx.RB_GROUP 的按钮,就会开启另一个新的单选按钮组别。

专题教程:wxpython中文教程

wx.RadioButton 样式有:
wx.RB_GROUP
wx.RB_SINGLE

如图:
wx.radiobutton.methods

例子:
 

复制代码 代码示例:

#!/usr/bin/python
#coding=utf-8

#radiobuttons.py

import wx

class MyFrame(wx.Frame):
def __init__(self, parent, id, title):
wx.Frame.__init__(self,parent,id,title,wx.DefaultPosition,
wx.Size(200, 250))
panel=wx.Panel(self, -1)
self.rb1=wx.RadioButton(panel, -1, 'Value A', (10, 10),
style=wx.RB_GROUP)
self.rb2=wx.RadioButton(panel, -1, 'Value B', (10, 30))
self.rb3=wx.RadioButton(panel, -1, 'Value C', (10, 50))
self.Bind(wx.EVT_RADIOBUTTON, self.SetVal, id=self.rb1.GetId())
self.Bind(wx.EVT_RADIOBUTTON, self.SetVal, id=self.rb2.GetId())
self.Bind(wx.EVT_RADIOBUTTON, self.SetVal, id=self.rb3.GetId())

self.statusbar = self.CreateStatusBar(3)
self.SetVal(True)

def SetVal(self, event):
state1=str(self.rb1.GetValue())
state2=str(self.rb2.GetValue())
state3=str(self.rb3.GetValue())
self.statusbar.SetStatusText(state1, 0)
self.statusbar.SetStatusText(state2, 1)
self.statusbar.SetStatusText(state3, 2)

class MyApp(wx.App):
def OnInit(self):
frame=MyFrame(None, -1, 'radiobuttons.py')
frame.Show(True)
frame.Center()
return True

app=MyApp(0)
app.MainLoop()

如图:

<a href=http://www.jb200.com/python/wxpythonhexinbujian/ target=_blank class=infotextkey>wxpython核心部件</a>wx.radiobutton