Вопрос

Я пытаюсь создать приложение, в котором есть JSplitPane, содержащий дерево документа слева и текущую панель редактора справа.Панель редактора имеет панель инструментов как часть панели редактирования.Моя проблема заключается в том, что когда размер JFrame, содержащего JSplitPane, изменяется, как только правый компонент разделенной панели достигает размера панели инструментов, правая панель начинает «сжимать» левую панель.

Мне было интересно, знает ли кто-нибудь способ сохранить два компонента разделенной панели в одинаковом соотношении и иметь либо панель инструментов, чтобы перестать отображать элементы внутри нее, либо кнопку «Еще».У меня есть панель инструментов tigris для возможности «дополнительно», работающей на панели инструментов фреймов, просто кажется, что она не меняет размер в JScrollpane.

Спасибо за помощь.

Это было полезно?

Решение

если я правильно понимаю, вы хотите, чтобы разделенная панель обрабатывала обе стороны с одинаковым приоритетом при изменении размера родительского фрейма.если это так, вы можете посмотреть на метод JSplitPane.setResizeWeight(double).

Указывает, как распределить дополнительное пространство при изменении размера разделенной панели.Значение 0 (по умолчанию) указывает, что правый/нижний компонент получает все дополнительное пространство (левый/верхний компонент действует фиксированно), а значение 1 указывает, что левый/верхний компонент получает все дополнительное пространство (правый/верхний компонент). нижний компонент действует фиксированно).В частности, левый/верхний компонент получает (вес * diff) дополнительное пространство, а правый/нижний компонент получает (1 - вес) * diff дополнительное пространство.

Имея это в виду, я бы попробовал 0,5.

редактировать

глядя на код BasicSplitPaneUI, он будет учитывать минимальный размер как левого, так и правого компонента при изменении размера, независимо от веса.вес по-прежнему важен, заметьте.его просто превосходит минимум компонентов.Имея это в виду, попробуйте установить минимальный размер на панели инструментов или в области прокрутки, в которой она содержится.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top