java - 如何减少 3 个 Swing 复选框之间的空间?

标签 java swing layout-manager grid-layout jcheckbox

我想在 Formatting 组(图像左侧)中缩小组件之间的大小。如何做到这一点?

enter image description here

JPanel formattingGroup = createGroupWithName("Formatting");
        formattingGroup.setMinimumSize(new Dimension(250, 20));
        formattingGroup.setLayout(new GridLayout(5, 0));
        add(formattingGroup);

        final JCheckBox showSurface = new JCheckBox("Show surface");
        showSurface.setSelected(true);
        formattingGroup.add(showSurface);

        final JCheckBox showTerrain = new JCheckBox("Show terrain");
        showTerrain.setSelected(true);
        formattingGroup.add(showTerrain);

        final JCheckBox showVehicleStatus = new JCheckBox("Show vehicle status");
        showVehicleStatus.setSelected(true);
        formattingGroup.add(showVehicleStatus);

        JPanel pnl = createGroupWithName("Depth Stretch");
        formattingGroup.add(pnl);
        JSlider slider = new JSlider(0, 10);
        pnl.add(slider);

最佳答案

当使用 GridLayout 时,所有组件的大小都相同。

您正在向网格添加一个带有 TitledBorder 和 JSlider 的 JPanel。因此,复选框将采用与该面板相同的垂直高度。

您需要为面板使用不同的布局管理器。也许是一个垂直的 BoxLayout。

关于java - 如何减少 3 个 Swing 复选框之间的空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8903203/

相关文章:

java - 遍历 LinkedList 的最佳方法 - Java

java - 添加 JPanel 时 JScrollPane 不滚动

java - 如何在同一个 JPanel 中实现南北部分

java - 在 GUI、java 上使用 Glue

java - JPanel 可调整大小,组件位于中心

java - 如何在 Visualvm 中查看 Web 应用程序数据

java - 使按钮识别 JTextField 中的文本

java - JNDI 在不检索所有数据的情况下获取 LDAP 搜索的大小

java - 如何让 JScrollpane 扩展高度而不是宽度?

java - Swing 动画运行速度极慢