“简单地”确定Java Radio Button id

时间:2013-08-07 19:30:41

标签: java netbeans components

我希望Java不像我的努力那样优雅,这让我相信。

我正在使用JRadioButtons,并希望以编程方式确定与它们关联的“ID”。为此,我试图阅读其NetBeans属性中列出的“名称”。

在ide中,当我右键单击组件时,我可以选择“更改变量名称...”我使用它来设置rb1,rb2等值。

但是在属性面板中,还有“name”条目,可以将其设置为不同的值。我用它来设置“id”-s,如1,2等等。

使用单选按钮,我知道我可以有一系列if语句,在处理程序中,可以询问

Object src = evt.getSource();
int val=-1;
     if (src == rb1) { val=1; }
else if (src == rb2) { val=2; }
else if (src == rb3) { val=3; }
else                 { val=4; }

但是,除了要求我用自己的控件名称硬编码id值,我很容易出现转录错误,我想相信有更简单的单语句方法来实现这一点,例如:

String name = rbGroup.getSelection().getName();
                                    .getText();
                                    .getLabel();

但是,我似乎对多个if-else语句的优雅和冗长使用感到困惑。

如何查询控件以最简单的方式为我提供NetBeans IDE中列出的属性?

1 个答案:

答案 0 :(得分:2)

一种方法是使用按钮的Action Command:

rb1.setActionCommand("1");

然后在事件处理程序中你可以使用:

String command = evt.getActionCommand();

如果未明确设置,则action命令默认为按钮文本。