уважаемые посетители блога, если Вам понравилась, то, пожалуйста, помогите автору с лечением. Подробности тут.

Компонент TSplitView появился впервые в Delphi 10 Seattle и позволяет отображать и скрывать временный контент. Например, вы можете использовать TSplitView в качестве навигационного меню верхнего уровня, где навигационный контент скрыт и показывается пользователю при необходимости.

Основная информация по компоненту
Вкладка палитры компонентов Windows 10
Исходник официального примера и документация SourceForge 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 в открытом, закрытом и частично закрытом положениях:

При подготовке статьи использовалась информация со следующих ресурсов:

  1. Официальный репозиторий демострационных примеров Delphi на SourceForge
  2. Документация по компоненту на сайте Embarcadero

уважаемые посетители блога, если Вам понравилась, то, пожалуйста, помогите автору с лечением. Подробности тут.