0

我正在尝试使用 gridbaglayout(在 Eclipse 中的 windowbuilder pro 中)来制作带有复选框的 gui。我的问题与此类似:stackOverflow:How to reduce space between JCheckboxes in GridLayout but setting the border to empty 没有帮助。以下代码生成以下 gui:

/*===============Check Boxes====================*/
ArrayList<String> names = test();
    int size = names.size();
    JCheckBox cb[]=new JCheckBox[size]; 

    for(int i=0;i<size;i++) {
        cb[i]=new JCheckBox(names.get(i));
        cb[i].setVisible(true);
        cb[i].setBorder(BorderFactory.createEmptyBorder());

        GridBagConstraints gbc_chckbxTestpurposes = new GridBagConstraints();
        //gbc_chckbxTestpurposes.insets = new Insets(0, 0, 0, 0);
        gbc_chckbxTestpurposes.gridx = 0;
        gbc_chckbxTestpurposes.gridy = i+1;
        contentPane.add(cb[i], gbc_chckbxTestpurposes);
     }

}

桂

如您所见,垂直间距与最后一个复选标记上的水平间距相差很大。

4

1 回答 1

2

尝试使用 GridBagConstraints.NORTHWEST 锚并在最后添加一个填充 JPanel,填充 = 垂直和权重 = 1

于 2013-05-26T08:18:52.050 回答