从Java中的多个单选按钮组获取输入

时间:2013-02-12 18:44:36

标签: java radio-button awt

我有几个单选按钮组可用于不同的主题,如主菜,开胃菜和饮料。我希望用户能够选择每种类型的东西。

我不确定如何实现动作侦听器 - 每个组是否都需要自己的动作侦听器?如果是这样,我如何区分动作侦听器/组?

private class SelectionChangeMade implements ActionListener {
    @Override
    public void actionPerformed(ActionEvent e) {
        String drinkChoice = drinkButtonGroup.getSelection().getActionCommand();
        System.out.println(drinkChoice);
//      String appetizerChoice =
                appetizerButtonGroup.getSelection().getActionCommand();
        // above line gives me a NullPointerError if uncommented
    }
}

1 个答案:

答案 0 :(得分:1)

不,您不需要为每个按钮组创建一个动作侦听器。您可以使用您编写的动作侦听器来读取用户输入。 如果您尝试在用户单击“提交”按钮等特定事件上选择单选按钮,则可以将此动作侦听器添加到“提交”按钮。

并且,Null Pointer Exception是由用户没有选择任何开胃菜引起的,你必须确保用户在获取动作命令之前选择了一些开胃菜。