基本单选按钮的问题 - java的

package pkg411project; import javax.swing.ButtonGroup; public class CrudMain extends javax.swing.JInternalFrame { public CrudMain() { initComponents(); } @SuppressWarnings("unchecked") private void jRadioButton1ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: } private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { BankRecordFrame bdFrame = new BankRecordFrame(); bdFrame.setVisible(true); this.jDesktopPane2.add(bdFrame); } // Variables declaration - do not modify private javax.swing.JButton jButton1; private javax.swing.JDesktopPane jDesktopPane2; private javax.swing.JLabel jLabel1; private javax.swing.JRadioButton jRadioButton1; private javax.swing.JRadioButton jRadioButton2; private javax.swing.JRadioButton jRadioButton3; private javax.swing.JRadioButton jRadioButton4; private javax.swing.JRadioButton jRadioButton5; // End of variables declaration //ButtonGroup group = new ButtonGroup(); //group. }

这是一个简单的问题,我认为。 我有四个单选按钮,并定期提交单选按钮下面的按钮。 我想,当用户点击提交按钮(单选按钮之一,在这一点上被选中)在JFrame取决于所选的单选按钮启动劳克的JFrame。 你如何将其写入代码? 有任何想法吗?

--------------解决方案-------------

您可以以多种方式做到这一点。 我会尝试,并张贴他们中的一个在这里。

这未必是最好的选择,但它可能只是为你工作。 (我没有测试这个)

public class CrudMain extends javax.swing.JInternalFrame {

public CrudMain() {
initRadioButtons();
initOtherStuff();
}

private JRadioButton[] radioButtons = new JRadioButton[4];
private JRadioButton btn1 = new JRadioButton();
private JRadioButton btn2 = new JRadioButton();
private JRadioButton btn3 = new JRadioButton();
private JRadioButton btn4 = new JRadioButton();
private JButton submitBtn = new JButton("Submit");

public void initRadioButtons() {
radioButtons[0] = btn1;
radioButtons[1] = btn2;
radioButtons[2] = btn3;
radioButtons[3] = btn4;
}

public void initOtherStuff() {
//add stuff to your frame
.......
submitBtn.addActionListener(this)
}

public void actionPerformed(ActionEvent e) {
for(int i =0; i < radioButtons.length; i++){
if(radioButtons[i].isSelected()){
//Open your frame here
break; //Place break if you only want one radiobutton to be checked.
} else {
//This button was not selected
}
}
}

因此,让我们来看看这段代码。 我把所有的按钮一个数组里面,这样就可以很容易地通过循环的内容,以检查他们是否已经被选中。 我把一个ActionListener上的按钮,当有人点击它,这将触发。 当ActionListener的触发它会遍历数组。 每次迭代内的每个按钮的状态被检查。 如果已选定将火一个动作。

这就是它。 如果您需要使用此代码帮助,请让我知道!

祝你好运!

编辑:

只是注意到,用这种方法你不能指定每个单选按钮的动作。 这件事情,你将不得不添加到此:)祝你好运!

在按钮的操作侦听器,检查哪个单选按钮被选中:

private void jButton1ActionPerformed(ActionEvent evt) {
if (jRadioButton1.isSelected()) {
// show frame 1
}
else if (jRadioButton2.isSelected()) {
// show frame 2
}
else if (jRadioButton3.isSelected()) {
// show frame 3
}
else if (jRadioButton4.isSelected()) {
// show frame 4
}
}

您将要使用的ButtonGroup来控制选择行为(所以只有一个单选按钮的同时选择)。 一个ActionListener添加到将JButton,并在监听器里,检索您的ButtonGroup选择的按钮。

分类:java的 时间:2012-11-27 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 3.108 (s). 10 q(s)