Solved

button group

Posted on 2001-08-14
8
637 Views
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.
0
Comment
Question by:raga
[X]
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
8 Comments
 
LVL 3

Expert Comment

by:exorcist
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.
0
 

Author Comment

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

Author Comment

by:raga
ID: 6383903
I don't want to remove the ButtonGroup, is there any method to do this?
0
Get 15 Days FREE Full-Featured Trial

Benefit from a mission critical IT monitoring with Monitis Premium or get it FREE for your entry level monitoring needs.
-Over 200,000 users
-More than 300,000 websites monitored
-Used in 197 countries
-Recommended by 98% of users

 
LVL 4

Expert Comment

by:Neutron
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.

Greetings,
    Ntr:)
0
 
LVL 3

Expert Comment

by:exorcist
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?
0
 
LVL 19

Accepted Solution

by:
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
0
 
LVL 9

Expert Comment

by:yongsing
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.
0
 

Author Comment

by:raga
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.

0

Featured Post

Get 15 Days FREE Full-Featured Trial

Benefit from a mission critical IT monitoring with Monitis Premium or get it FREE for your entry level monitoring needs.
-Over 200,000 users
-More than 300,000 websites monitored
-Used in 197 countries
-Recommended by 98% of users

Question has a verified solution.

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

By the end of 1980s, object oriented programming using languages like C++, Simula69 and ObjectPascal gained momentum. It looked like programmers finally found the perfect language. C++ successfully combined the object oriented principles of Simula w…
Introduction This article is the last of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers our test design approach and then goes through a simple test case example, how …
Viewers will learn one way to get user input in Java. Introduce the Scanner object: Declare the variable that stores the user input: An example prompting the user for input: Methods you need to invoke in order to properly get  user input:
This video teaches viewers about errors in exception handling.
Suggested Courses

636 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