我想在 Formatting 组(图像左侧)中缩小组件之间的大小。如何做到这一点?
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/