java - 调整java swing中复选框之间的间距

标签 java swing gridbaglayout jcheckbox

我正在尝试使用 gridbaglayout (在 Eclipse 中的 windowbuilder pro 中)来制作带有复选框的 gui。我的问题与此类似:stackOverflow:How to reduce space between JCheckboxes in GridLayout但将边框设置为空并没有帮助。以下代码生成以下 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);
     }

}

gui

正如您所看到的,垂直间距以及最后一个复选标记上的水平间距都非常不合适。

最佳答案

尝试使用 GridBagConstraints.NORTHWEST anchor 并添加填充 JPanel 最后使用 fill=vertically 和 Weighty=1

关于java - 调整java swing中复选框之间的间距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16756083/

相关文章:

java - 删除重复的 JAR's-Mavenbuild

java - 一个组件在 GridBagLayout 中仅占据一列

java - "non-static variable this cannot be referenced from a static context"?

java - 确定数组列表中全局最大值的好方法是什么

java - Notify() 不能与 Wait() 一起使用

java - 处置容器是否会删除所有已注册的监听器?

java - 如何使用 jbutton 清除 jtable 中的数据

java - 如果类 B 的实例是类 A 的成员,那么当类 B 中的按钮被按下时,类 B 如何调用类 A 的方法?

Java Swings JTextField 未正确显示,它看起来像一条缝

java - 单选按钮位置