Компонент TSplitView появился впервые в Delphi 10 Seattle и позволяет отображать и скрывать временный контент. Например, вы можете использовать TSplitView в качестве навигационного меню верхнего уровня, где навигационный контент скрыт и показывается пользователю при необходимости.
| Основная информация по компоненту | ||
| Вкладка палитры компонентов | Windows 10 | |
| Исходник официального примера и документация | DocWiki | |
Демонстрационный пример показывает как использовать компонент TSplitView для создания красивого меню приложения для чего в примере используются различные свойства компонента.
Приложение использует следующие элементы управления:
- ActionList1: TActionList — действия, связанные с элементами меню.
- SV: компонент TSplitView.
- catMenuItems: пункты меню.
- pnlToolbar: панель с заголовком и главной кнопкой приложения.
- imgMenu: изображение, которое выступает в качестве главной кнопки.
- pnlSettings: панель с основными элементами управления приложения.
- cbxVclStyles: поле со списком, которое позволяет вам изменить стиль приложения.
- chkCloseOnMenuClick: флажок, который указывает, свернет ли щелчок по пункту меню TSplitView.
- grpAnimation:
- chkUseAnimation: переключает свойство UseAnimation TSplitView.
- trkAnimationDelay: устанавливает задержку анимации для TSplitView.
- trkAnimationStep: Устанавливает шаг анимации TSplitView.
- grpCloseStyle: Позволяет вам выбрать стиль закрытия TSplitView.
- grpDisplayMode: позволяет выбрать режим отображения TSplitView
- grpPlacement: Позволяет выбрать размещение TSplitView.
- lstLog: отображает лог работы приложения.
Внешний вид демонстрационного приложения представлен на рисунке ниже:
Использование компонента
TSplitView похож на TMultiView в FireMonkey (FM2, FMX).
При открытии TSplitView может быть пристыкован к левому или правому краю формы или отображен в верхней части клиентской области формы (с наложением). В закрытом виде TSplitView может быть полностью скрыт (CloseStyle = svcCollapse), или же часть TSplitView может оставаться видимой (CloseStyle = svcCompact).
Демонстрационный пример
В демонстрационном примере показывается использование различных свойств и поведения TSplitView.
Открытие/закрытие TSplitView осуществляется следующим образом:
procedure TSplitViewForm.imgMenuClick(Sender: TObject); begin if SV.Opened then SV.Close else SV.Open; end;
Смена расположения TSplitView, его внешний вид и анимация при закрытии устанавливаются следующим образом:
procedure TSplitViewForm.grpDisplayModeClick(Sender: TObject); begin SV.DisplayMode := TSplitViewDisplayMode(grpDisplayMode.ItemIndex); end; procedure TSplitViewForm.grpCloseStyleClick(Sender: TObject); begin SV.CloseStyle := TSplitViewCloseStyle(grpCloseStyle.ItemIndex); end; procedure TSplitViewForm.grpPlacementClick(Sender: TObject); begin SV.Placement := TSplitViewPlacement(grpPlacement.ItemIndex); end;
На рисунках ниже представлен пример работающего демонстрационного приложения, в котором показано как выглядит TSplitView в открытом, закрытом и частично закрытом положениях:
При подготовке статьи использовалась информация со следующих ресурсов:
- Официальный репозиторий демострационных примеров Delphi на SourceForge
- Документация по компоненту на сайте Embarcadero



