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