如何获取JRadioButton的文本值
我正在用java创建一个项目。我的程序有 80 个 JRadioButtons ....我需要获取它们的文本值..现在这些单选按钮已添加到 ButtonGroup(每个单选按钮有 4 个单选按钮)...
我知道如何从单选按钮获取文本值下面的代码
radiobutton1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String q1=e.getActionCommand();
JOptionPane.showMessageDialog(null, q1);
}
});
现在有什么简单的方法可以做到这一点吗?因为我必须执行上面的代码 80 次(对于 80 个单选按钮,如果我使用上面的方法,请使用上面的方法
附加信息 - 我总共有 20 个 ButtonGroups,每个 ButtonGroups 有 4 个单选按钮。所以(80 个单选按钮)。
I am creating a project in java. My Program has 80 JRadioButtons .... I need the get the text value of them.. Now these radiobuttons are added to ButtonGroup(each has 4 radio buttons)...
I know how to get the text value from the radio button by this following code
radiobutton1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String q1=e.getActionCommand();
JOptionPane.showMessageDialog(null, q1);
}
});
Now is there any easy way to do this? because i will have to do this above code for 80 times(for eighty radiobuttons if i use the above use the above method
Additional Info- I have Total 20 ButtonGroups each with 4 radio buttons. So(80 radio buttons).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
那么最简单的方法是
then easiest way is
我猜你面临这个问题的原因是因为你手动创建了每个 JRadioButton (而不是循环)。
如果你确实不能这样做,你可以使用一些智能代码:
The reason you are facing this problem is because you created every JRadioButton manually, I guess (instead of a loop).
If you really can't do it otherwise, you can use some intelligent code:
您可能不应该为每个单选按钮单独定义操作侦听器,而应该为所有单选按钮定义一个公共操作侦听器。
例如
然后,您可以按如下方式使用它:
另外,
ActionEvent#getActionCommand()
返回与操作关联的命令字符串,而不是完全命令组件的文本。May be instead of defining action-listener for each radio-button individually, you should define a common action-listener for all the radio-buttons.
e.g.
Then, you can use it as follows:
Also, the
ActionEvent#getActionCommand()
returns the command string associated with the action not extacly the text of command-component.实现您想要的设计的关键(我认为)是充分利用数组的力量。例如,您可以有一个保存 JRadioButton 文本的二维字符串数组和一个 ButtonGroups 的一维数组,然后能够轻松设置 GUI 并使用 for 循环和嵌套 for 循环查询 GUI(以及使用 mKorbel 的出色建议)。
例如:
The key to implementing a design like you desire (I think) is to use arrays to their fullest power. For instance, you could have a 2-Dimensional array of String that holds the JRadioButton texts, and a 1-Dimensional array of ButtonGroups and then be able to easily set up your GUI and query your GUI with for loops and nested for loops (and using the excellent suggestion of mKorbel).
For example:
这对我有用
This works for me