我正在尝试使用 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);
}
}
如您所见,垂直间距与最后一个复选标记上的水平间距相差很大。