2012-10-23 32 views
1

我創建了5個radioButton組。我希望用戶只需點擊一下即可清除所有羣組。 我使用java 1.5。如何清除ButtonGroup中的選擇,使得沒有選擇相關的一組抽象按鈕的元素?

是否有人知道該怎麼做?

public void actionCommandCLEAR() { 
     timeGroup.setSelected(timeGroup.getSelection(),false); 
     dateGroup.setSelected(dateGroup.getSelection(),false); 
     docGroup.setSelected(docGroup.getSelection(),false); 
     socGroup.setSelected(socGroup.getSelection(),false); 

} 

回答

3
timeGroup.clearSelection(); 
dateGroup.clearSelection(); 
docGroup.clearSelection(); 
socGroup.clearSelection(); 

對Java 1.5,我們需要編寫自己clearSelection:

void cleartSelection(ButtonGroup bg) { 
Enumeration<AbstractButton> e =bg.getElements(); 
    while(e.hasMoreElements()) { 
     AbstractButton b = e.nextElement(); 
     b.setSelected(false); 
    } 
} 

clearSelection(timeGroup); 
+0

我使用java 1.5。 – itro

+0

我的錯,編輯爲java 1.5 – 2012-10-23 15:21:56

+0

對不起,但它並沒有改變狀態。可以是我應該刷新或更新不起作用的GUI – itro

1

這是原因是由@Darryl伯克

創建 Select Button Group爲什麼
+0

不,這不是重點:問題是關於_clearing_選擇,而不是訪問所選按鈕。在1.6之前,不可能讓所有模型未被選中(除了實例化時)。 – kleopatra

2

我只是爲每個組添加一個額外隱藏的單選按鈕,並在我想清除所有按鈕組時選擇該按鈕。

public void actionCommandCLEAR() { 
     hiddenTime.setSelected(true); 
     hiddenDate.setSelected(true); 
     hiddenDoc.setSelected(true); 
     hiddenSoc.setSelected(true); 
     hiddenLand.setSelected(true); 
    } 
+0

對於遺漏的功能足夠好了:-)或者,您可以擴展ButtonGroup並實現clearSelection。 – kleopatra

相關問題