AKM
AKM

Reputation: 6555

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 that a choice has been made how can I change the code that when this radibox rendered first time there are no option has been chosen.

Upvotes: 3

Views: 1842

Answers (4)

OrangeCube
OrangeCube

Reputation: 398

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)

Upvotes: 1

ravenspoint
ravenspoint

Reputation: 20472

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

Upvotes: -1

volting
volting

Reputation: 18977

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.

Upvotes: 2

unutbu
unutbu

Reputation: 879501

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".

Upvotes: 4

Related Questions