【问题标题】:pass radiobutton value that selected to another class将选择的单选按钮值传递给另一个类
【发布时间】:2011-08-11 19:20:18
【问题描述】:

有什么例子可以让我将选择的单选按钮值传递给另一个类吗?

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

【问题讨论】:

  • 嗨 TinyBelly,有很多例子,但是为了让我们给你一个适合你正在寻找的例子,请更具体,如果你有这样的,请向我们展示你的一些代码.
  • 你指的是值(真/假)吗?是否要检查按钮是否被选中,然后将布尔值传递给另一个类中的方法?
  • @TinyBelly 昨天的Hovercraft Full Of Eels 的例子出了什么问题,你懒得把 WeekDays 改成 Hours [stackoverflow.com/questions/5765010/…
  • hmm...我仍然想出代码...我不明白,因为我是 Java 新手...需要时间来理解...我只需要一个最简单的方法
  • 如果您不明白,那么您在原始线程中提出具体问题。您不会忽略其他人的努力并通过重复相同的问题并在不通知所有人的情况下发表许多交叉帖子来浪费人们的时间。

标签: java swing radio-button


【解决方案1】:

最简单的方法是将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]);
}

在这里,我说了:)

【讨论】:

【解决方案2】:

如果你看Swing Tutorial part on Buttons ...

让其他类实现 ActionListener 并创建此方法

public void actionPerformed(ActionEvent e) {
    // do something
}

确保在单选按钮上调用

radioButton.addActionListener(otherClass);  

编辑:要回答获取问题中按钮的文本,请在 actionPerformed 中执行此操作 在 ActionEvent 上调用 getSource() ,它将告诉您哪个按钮触发了该事件。这只是从按钮获取文本的问题(我认为是 getText() 但不确定。)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-02
    相关资源
    最近更新 更多