button group

Posted on 2001-08-14
Last Modified: 2012-08-14
I am using a ButtonGroup, according to java, initially no button is selected in the group. After that i am selecting any one of the button and after that i want to deselect all of the buttons , its somewhat like situation at the start i.e., all buttons unselected in the button group. But i heard that its not possible, does any one know about this?. Don't give the solution of using setSelected method, as this method is only applicable to button, not for ButtonGroup.
Question by:raga
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions

Expert Comment

ID: 6383847
I think this is true, you cannot deselect all buttons. But maybe it helps to remove all buttons from the ButtonGroup, deselect each of them and then add them to the ButtonGroup (or a new ButtonGroup).

Just a thought.

Author Comment

ID: 6383870
I don't want to remove the ButtonGroup, is there any method to do this?

Author Comment

ID: 6383903
I don't want to remove the ButtonGroup, is there any method to do this?
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Expert Comment

ID: 6384561
You can try to fool buttongroup by adding a dummy button, setting it to selected using buttonGroup.setSelected( dummyButton.getModel(), true ) and then removing it.

I didn't try this (because I didn't need it), so I don't know if it will work, also I don't know when you remove dummy button will button group select something else.

Also, you could have this button all the time in the group, but set it to invisible, and select it programatically when you want to deselect the group.


Expert Comment

ID: 6384630
You don't even need to set it to invisible. Wouldn't it work if you just didn't add it to your Container?
LVL 19

Accepted Solution

Jim Cakalic earned 50 total points
ID: 6384743
The Java Tutorial provides this recommendation that seems to work:
"There's no supported API for unselecting all the buttons. However, if you really want to unselect all the buttons (not that we recommend it), invoking setSelected(null, true) on the ButtonGroup should do the trick."

The javadoc for ButtonGroup also suggests:
"To give the appearance of "none selected", add an invisible radio button to the group and then programmatically select that button to turn off all the displayed radio buttons. For example, a normal button with the label "none" could be wired to select the invisible radio button."

Of the two, the first method seems to be simpler. The only downside I can think of is it may not necessarily be portable or might fail to work in future versions of Swing.

Best regards,
Jim Cakalic

Expert Comment

ID: 6386645
Jim is right. All you need to do is to create an 'invisible' button and then you add it to your button group. However, you don't add this button to your panel, dialog or frame. This way, it will not appear at all. When you want to unselect all the visible buttons, you just need to select the 'invisible' button.

Author Comment

ID: 6387684
Actually, we were using 1st suggestion till now, but after modifying the layout and some gui in which the buttongroup is added, it was giving exception. I tried the second one it is working fine.


Featured Post

Enroll in May's Course of the Month

May’s Course of the Month is now available! Experts Exchange’s Premium Members and Team Accounts have access to a complimentary course each month as part of their membership—an extra way to increase training and boost professional development.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
How  can  i  resolve  HTTP Status 404 -? 8 81
ejb entity bean example issue 2 44
import as existing maven project 3 78
Html split(text) 2 50
Java had always been an easily readable and understandable language.  Some relatively recent changes in the language seem to be changing this pretty fast, and anyone that had not seen any Java code for the last 5 years will possibly have issues unde…
Introduction This article is the second of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers the basic installation and configuration of the test automation tools used by…
Viewers will learn about if statements in Java and their use The if statement: The condition required to create an if statement: Variations of if statements: An example using if statements:
This tutorial covers a practical example of lazy loading technique and early loading technique in a Singleton Design Pattern.
Suggested Courses

710 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question