在上篇文章中拱礁,3個單選按鈕同時都可以被選中琢锋,這個就不符合實際開發(fā)中所用到的單選按鈕的要求。在實際開發(fā)中呢灶,需要的單選按鈕被選中吴超,其他的單選按鈕自動被置為未選中狀態(tài),要產(chǎn)生這種效果填抬,就要使用到按鈕組烛芬。下面將通過實例來說明如何將幾個單選按鈕劃分到按鈕組中。其代碼如下所示:
/**
*這段代碼主要是展示如何創(chuàng)建單選按鈕組件飒责,并且將這些單選按妞組件添加到一個按鈕組中
*/
publicclassBWF{
publicstaticintwidth=300;
publicstaticintheight=200;
publicstaticvoidmain(String args[]){
JFrame jf=newJFrame("添加單選按鈕組件");
jf.setSize(width,height);
JPanel contentPane=newJPanel();
JRadioButton jr1=newJRadioButton("忽略");//創(chuàng)建單選按鈕
JRadioButton jr2=newJRadioButton("繼續(xù)");
JRadioButton jr3=newJRadioButton("跳過");
ButtonGroupbuttonGroup=newButtonGroup();//將三個單選按鈕劃分到一個按鈕組中去
buttonGroup.add(jr1);
buttonGroup.add(jr2);
buttonGroup.add(jr3);
contentPane.add(jr1);//將按鈕添加到內(nèi)容面板中
contentPane.add(jr2);
contentPane.add(jr3);
jf.setContentPane(contentPane);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setVisible(true);
}
}
經(jīng)過上述程序代碼的處理后赘娄,圖中的三個按鈕只能在同一個時間內(nèi)選擇一個,而不能同時選擇多個宏蛉。另外遣臼,有一個實際應(yīng)用的小技巧,當(dāng)一個界面上有很多個單選按鈕時拾并,可以將同一類的單選按鈕劃分到同一個按鈕組中揍堰,這樣就可以形成多個按鈕組,用于執(zhí)行特殊的功能嗅义。
下面將給出一個綜合實例屏歹,這個實例將多個單選按鈕組件分別分成多個按鈕組,其具體代碼如下所示:
/**
*這段代碼主要是展示如何創(chuàng)建單選按鈕組件之碗,以及如何將它們放在不同的按鈕組件中
*/
publicclassBWF{
publicstaticintwidth=300;
publicstaticintheight=200;
publicstaticvoidmain(String args[]){
JFrame jf=newJFrame("添加單選按鈕組件");
jf.setSize(width,height);
JPanel contentPane=newJPanel();
JRadioButton jr1=newJRadioButton("乒乓球");//創(chuàng)建單選按鈕
JRadioButton jr2=newJRadioButton("籃球");
JRadioButton jr3=newJRadioButton("電視書");
JRadioButton jr4=newJRadioButton("數(shù)學(xué)書");
JRadioButton jr5=newJRadioButton("電影");
JRadioButton jr6=newJRadioButton("錄像");
ButtonGroup buttonGroup1=newButtonGroup();//將單選按鈕劃分到一個按鈕組中去
buttonGroup1.add(jr1);
buttonGroup1.add(jr2);
ButtonGroup buttonGroup2=newButtonGroup();
buttonGroup2.add(jr3);
buttonGroup2.add(jr4);
ButtonGroup buttonGroup3=newButtonGroup();
buttonGroup3.add(jr5);
buttonGroup3.add(jr6);
contentPane.add(jr1);//將按鈕添加到內(nèi)容面板中
contentPane.add(jr2);
contentPane.add(jr3);
contentPane.add(jr4);
contentPane.add(jr5);
contentPane.add(jr6);
jf.setContentPane(contentPane);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setVisible(true);
}
}