Skip to content

Latest commit

 

History

History
132 lines (105 loc) · 5.71 KB

File metadata and controls

132 lines (105 loc) · 5.71 KB
SplitPanel

SplitPanel − контейнер, разбитый на две области, размер которых по горизонтали либо вертикали можно менять путем перемещения разделителя.

gui splitPanel

XML-имя компонента: split.

Пример описания панели с разделителем в XML-дескрипторе экрана:

link:../../../../../../source/gui_vcl/splitpanel_1.xml[role=include]

Внутри контейнера split обязательно должны находиться два вложенных контейнера или компонента, которые и будут расположены по обе стороны разделителя.

Атрибуты split:

  • dockable - управляет видимостью кнопки сворачивания SplitPanel, значение по умолчанию false.

    gui SplitPanel dockable
    Warning

    Сворачивание доступно только для горизонтального контейнера SplitPanel.

  • dockMode - задаёт направление сворачивания. Возможные значения: LEFT и RIGHT.

    <split orientation="horizontal"
           dockable="true"
           dockMode="RIGHT">
        ...
    </split>
  • minSplitPosition, maxSplitPosition - определяют диапазон допустимых значений позиции разделителя. Могут быть установлены в пикселях или в процентах.

    Например, вы можете запретить перетаскивать сплиттер вне диапазона между 100 и 300 пикселями с левой стороны компонента:

    link:../../../../../../source/gui_vcl/splitpanel_2.xml[role=include]

    Если вы хотите установить диапазон программно, вы должны указать единицу измерения с помощью Component.UNITS_PIXELS или Component.UNITS_PERCENTAGE

    link:../../../../../../source/gui_vcl/splitpanel_3.java[role=include]
  • orientation - задает ориентацию расположения компонентов. horizontal - вложенные компоненты располагаются горизонтально, vertical - вертикально.

  • pos - целое число, определяющее процентное соотношение размера первой области по отношению ко второй. Например, pos="30" означает соотношение областей 30/70. По умолчанию соотношение областей составляет 50/50.

  • reversePosition - указывает, что атрибут pos содержит позицию разделителя, отсчитанную с обратной стороны компонента.

  • Если атрибут locked установлен в true, то пользователи не смогут изменить положение разделителя.

  • Атрибут stylename со значением large увеличивает толщину разделителя.

    link:../../../../../../source/gui_vcl/splitpanel_4.java[role=include]

Методы SplitPanel:

  • Позицию разделителя можно получить с помощью метода getSplitPosition().

  • События изменения положения разделителя можно отлеж PositionUpdateListener.

  • Если нужно получить единицу измерения позиции разделителя, используйте метод getSplitPositionUnit(). Он возвращает Component.UNITS_PIXELS или Component.UNITS_PERCENTAGE.

  • isSplitPositionReversed() возвращает true в случае, если позиция отсчитывается с обратной стороны компонента.