Java:jsplitpane和boxlayout的问题

opi*_*ike 2 java swing jsplitpane boxlayout

我想摆脱jsplitpanes左边的空白区域:

截图

这是我的代码:

getContentPane().setLayout(new BoxLayout(getContentPane(), BoxLayout.Y_AXIS));

JSplitPane splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT);
splitPane.add(downloadsPanel);
splitPane.add(filesPanel);

JSplitPane splitPane2 = new JSplitPane(JSplitPane.VERTICAL_SPLIT);
splitPane2.add(processingPanel);
splitPane2.add(messagePanel);

JSplitPane splitPane3 = new JSplitPane(JSplitPane.VERTICAL_SPLIT);

splitPane3.add(splitPane);
splitPane3.add(splitPane2);

getContentPane().add(addPanel);
getContentPane().add(splitPane3);
Run Code Online (Sandbox Code Playgroud)

cam*_*ckr 5

BoxLayout通过组件对齐来做奇怪的事情.阅读关于修复对齐问题的swing教程中的部分.简而言之,确保addPanel和splitPane3的对齐方式相同:

component.setAlignmentX(Component.CENTER_ALIGNMENT);
Run Code Online (Sandbox Code Playgroud)

它看起来像一个默认为CENTER,另一个默认为LEFT.