是否有任何示例让我将选择的radiobutton值传递给另一个类?
jr1 = new JRadioButton ("11.40 AM");
jr2 = new JRadioButton ("12.00 PM");
jr3 = new JRadioButton ("1.40 PM");
jr4 = new JRadioButton ("3.40 PM");
jr5 = new JRadioButton ("5.40 PM");
jr6 = new JRadioButton ("7.00 PM");
jr7 = new JRadioButton ("9.00 PM");
jr8 = new JRadioButton ("10.40 PM");
jr9 = new JRadioButton ("11.40 PM");
jr10 = new JRadioButton ("12.40 AM");
ButtonGroup group = new ButtonGroup ();
group.add(jr1);
group.add(jr2);
group.add(jr3);
group.add(jr4);
group.add(jr5);
group.add(jr6);
group.add(jr7);
group.add(jr8);
group.add(jr9);
group.add(jr10);
我正在使用这种方式...现在我需要知道我应该如何添加例如;如果我选择12.00 pm ...它会将12.00的值传递给另一个班级... TQ
答案 0 :(得分:2)
如果你看一下Swing Tutorial part on Buttons ...
让其他类实现ActionListener并创建此方法
public void actionPerformed(ActionEvent e) {
// do something
}
确保在您的单选按钮上拨打
radioButton.addActionListener(otherClass);
编辑:要回答问题中获取按钮的文本,请在actionPerformed中执行此操作 在ActionEvent上调用getSource(),它会告诉你哪个按钮触发了事件。这只是从按钮获取文本的问题(我认为这是getText()但不确定。)
答案 1 :(得分:0)
最简单的方法是将isSelected()
方法的返回值传递给对象:
MyButtonWatcherClass watch = new MyButtonWatcherClass(); // not a real class, just an example
JRadioButton radioButton = new JRadioButton("Simple Radio Button");
...
watch.processRadioButtonState(radioButton.isSelected()); // not a real method, just an example
放置此代码的位置取决于您,但这是主要概念。
看着你的代码,我无法抗拒 - 使用数组:
String hours[] = {"11.40 AM", "12.00 PM" .... };
JRadioButton jrb[] = new JRadioButton[hours.length];
ButtonGroup group = new ButtonGroup ();
...
for (int i = 0; i < hours.length; i++)
{
jrb[i] = new JRadioButton(hours[i]);
group.add(jrb[i]);
}
在这里,我说:)