将Buttongroup添加到GUI或在没有GUI的情况下一次只选择一个按钮

时间:2014-02-16 20:27:43

标签: java swing user-interface jradiobutton

我目前正在开展一个项目,该项目将采用Pizza的理论订单。我制作的一个小组将为Pizza提供三种选择。薄壳,规则,深盘。 我最初的想法是使用Buttongroup,因为那些使得它只能一次选择一个。然而,这似乎不适用于JPanels,因为在这里搜索我发现。但是,我在这里找到的答案都没有提到任何其他方式,这使得他们不会立即被选中。

1 个答案:

答案 0 :(得分:3)

使用ButtonGroup的想法是完全正确的。请查看Java Api以获取更多信息。

修改

最小的例子如下:

import java.awt.GridLayout;

import javax.swing.ButtonGroup;
import javax.swing.JFrame;
import javax.swing.JRadioButton;
import javax.swing.SwingUtilities;

public class BottonGroupGui extends JFrame {

    public BottonGroupGui() {
        this.setDefaultCloseOperation(EXIT_ON_CLOSE);

        JRadioButton a = new JRadioButton("a");
        JRadioButton b = new JRadioButton("b");

        this.setLayout(new GridLayout());

        this.getContentPane().add(a);
        this.getContentPane().add(b);

        ButtonGroup group = new ButtonGroup();

        group.add(a);
        group.add(b);

        this.setVisible(true);
        this.pack();
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            @Override
            public void run() {
                new BottonGroupGui();
            }
        });

    }
}

您不必添加BottonGroup。只需将按钮(在我的情况下为JRadioButtons)分配给相应的组。