我想创建100个JToggleButtons并使用for循环将其保存在链接列表中。然后以网格袋布局显示它们。

ArrayList<JToggleButton> buttons = new ArrayList<JToggleButton>();
    for(int i=0; i<100; i++){
            buttons.add(new JToggleButton(""));// = new JToggleButton("");
            GridBagConstraints gbc_ = new GridBagConstraints();
            gbc_tglbtnNewToggleButton.fill = GridBagConstraints.VERTICAL;
            gbc_tglbtnNewToggleButton.insets = new Insets(0, 0, 5, 5);
            gbc_tglbtnNewToggleButton.gridx = i;
            gbc_tglbtnNewToggleButton.gridy = j;
            frame.getContentPane().add(tglbtnNewToggleButton, gbc_tglbtnNewToggleButton);
    }


我尝试过类似的方法,但是我不能。

最佳答案

您没有将创建的按钮添加到内容窗格中。并且您创建了一个名为gbc_的约束,但是从不使用它。将代码更改为

gbc_tglbtnNewToggleButton.fill = GridBagConstraints.VERTICAL;
gbc_tglbtnNewToggleButton.insets = new Insets(0, 0, 5, 5);
gbc_tglbtnNewToggleButton.gridy = j;
for (int i = 0; i < 100; i++) {
    JToggleButton button = new JToggleButton("");
    buttons.add(button);
    gbc_tglbtnNewToggleButton.gridx = i;
    buttons.add(button, gbc_tglbtnNewToggleButton);
}

10-06 06:38