如何从按钮组中选择哪个JRadioButton

2022-08-31 11:48:43

我有一个秋千应用程序,其中包括表单上的单选按钮。我有,但是,查看可用的方法,我似乎无法获得所选名称。以下是到目前为止我能说的:ButtonGroupJRadioButton

  • 从按钮组中,我可以执行一个返回.从那里,我可以执行一个,但这似乎并不总是有效。我尝试了不同的测试,得到了不可预测的结果。getSelection()ButtonModelgetActionCommand

  • 同样从 ,我可以得到一个枚举从 .但是,然后我必须循环浏览每个按钮,以检查它是否是所选按钮。ButtonGroupgetElements()

有没有更简单的方法来找出选择了哪个按钮?我正在Java 1.3.1和Swing中编程。


答案 1

我得到了类似的问题,并解决了这个问题:

import java.util.Enumeration;
import javax.swing.AbstractButton;
import javax.swing.ButtonGroup;

public class GroupButtonUtils {

    public String getSelectedButtonText(ButtonGroup buttonGroup) {
        for (Enumeration<AbstractButton> buttons = buttonGroup.getElements(); buttons.hasMoreElements();) {
            AbstractButton button = buttons.nextElement();

            if (button.isSelected()) {
                return button.getText();
            }
        }

        return null;
    }
}

它返回所选按钮的文本。


答案 2

我会循环浏览你的并打电话给.如果你真的想从你只能得到模型。您可以将模型与按钮相匹配,但是如果您可以访问按钮,为什么不直接使用它们呢?JRadioButtonsisSelected()ButtonGroup


推荐