Java: проблема с jsplitpane и boxlayout - PullRequest
2 голосов
/ 18 июня 2011

Я хочу избавиться от пустого пространства слева от jsplitpanes:

screenshot

Вот мой код:

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);

1 Ответ

5 голосов
/ 18 июня 2011

BoxLayout делает странные вещи с выравниванием компонентов. Прочтите раздел из учебника по Swing по Устранение проблем с выравниванием . Короче говоря, убедитесь, что выравнивание addPanel и splitPane3 одинаково:

component.setAlignmentX(Component.CENTER_ALIGNMENT);

Мне кажется, что по умолчанию один - CENTER, а другой - LEFT.

...