Skip to content Skip to sidebar Skip to footer

How To Remove Initial Wx.RadioBox Selection?

I have the following code : myList =['a','b'] rb=wx.RadioBox(self.panel, -1, 'Options :', (0, 0), wx.DefaultSize,myList, 2, wx.RA_SPECIFY_COLS) When it renders first time I see th

Solution 1:

The use of a radio box implies, "there is a list of two or more options that are mutually exclusive and the user must select exactly one choice."

The radio box never exists in a state with no choice made. If that's not the case, then don't use a radio box.

If you don't want any of the current radio box options to be selected as default, add another option for "N/A" or "No choice".


Solution 2:

If your really need to do this then probably the only way is to create your own RadioBox. A RadioBox can easily built from a Panel, StaticBox, StaticBoxSizer and of course RadioButtons.

In the __init__ for your RadioBox use the RadioButtons SetValue() method to set the initial value of the RadioButtons to False.

Take a look at RadioButton demo in the wxpython Demos, there should be enough there to get you started in the right direction.


Solution 3:

If you just want initial selection invisible, you can have a try with ShowItem(item, show=True)

example here:

myList =['','a','b']
rb=wx.RadioBox(self.panel, -1, "Options :", (0, 0), wx.DefaultSize,myList, 2, wx.RA_SPECIFY_COLS)
rb.ShowItem(0, show=False)

Solution 4:

Call the the radiobox SetSelection method with a parameter value of -1


Post a Comment for "How To Remove Initial Wx.RadioBox Selection?"