每当此面板初始化时,我都希望选择一个随机单选按钮,但是我不确定如何/是否可以这样做。

是否可以从组中选择一个随机按钮并将其选中?

import javax.swing.*;

public class RandomPanel extends JPanel
{
    private ButtonGroup buttonGroup;
    private String[] buttonText =
            {
                    "Red",
                    "Mashed Potatoes",
                    "Metal",
                    "Running",
                    "Butts",
                    "Turquoise"
            };

    public RandomPanel()
    {
        setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
        setBorder(BorderFactory.createTitledBorder("Random Selections"));

        buttonGroup = new ButtonGroup();
        for (String text : buttonText)
        {
            JRadioButton option = new JRadioButton(text);
            add(option);
            button.add(option);
        }
    }

}

最佳答案

您可以做的是保留所有创建的单选按钮的列表/数组,然后使用按钮组的setSelected()方法设置所选内容。

buttonGroup.setSelected(buttonsArray[randomButtonNum].getModel(), true);

09-26 17:01