Шаг 21.
Вкладка Additional. Компонент TActionMainMenuBar

    На этом шаге мы рассмотрим компонент TActionMainMenuBar.

    Компонент TActionMainMenuBar является специализированным контейнером (подобно TPanel), в котором создается группа элементов для отображения на экране в порядке, определенном в менеджере действий.

    Все элементы создаются динамически, когда компонент TActionMainMenuBar связывается с элементами менеджера действий. Таким образом компонент TActionMainMenuBar имеет непосредственную связь с компонентом TActionManager. Сами входящие элементы являются компонентами, подобными TMenuItem, создаваемыми в TActionMainMenuBar и отображаемыми последовательно в основном меню. Компоновка элементов в основном меню происходит автоматически и определяется настройками менеджера действий.

    Интерфейс приложения для пользователя можно создать следующим образом:

    Определим список действий, чтобы создать набор действий, которые будут необходимы для приложения, для чего используем Менеджер Действий - TActionManager. Для размещения созданных действий поместим на форму компонент TActionMainMenuBar. Произведем перемещение созданных действий с диалогового окна TActionManager на инструментальную панель TActionMainMenuBar. Действие (Action) - предполагает ответ на действия пользователя, например реакция приложения на щелчок по пункту меню. Категория действия позволяет объединить действия в группы и помещать их на инструментальную панель. Все стандартные действия определены в классах действия типа TEditCopy, TEditCut и TEditUndo. Можно использовать эти классы, помещая их на инструментальную панель.

    Свойства компонента TActionMainMenuBar:

Таблица 1. Свойства компонента TActionMainMenuBar
Свойство Описание
Property ActionClient: TActionClient; Обеспечивает доступ к конкретным объектам TClientAction, управляемым менеджером действия.
Type TAnimationStyle = (asNone, asDefault, asUnFold, asSlide, asFade);
Property AnimationStyle: TAnimationStyle;
Определяет тип мультипликации, т.е. каким образом открываются пункты меню:
  • asNone - никакая мультипликация не используется;
  • asDefault - используется стиль операционной системы;
  • asUnFold - меню разворачивается по диагонали вниз от верхнего левого угла;
  • asSlid - меню скользит от вершины вниз;
  • asFade - меню появляется из невидимого изображения в видимое изображение.
Property EdgeBorders: TEdgeBorders; Устанавливает границы по краям компонента.
Property EdgeInner: TEdgeStyle Определяет вид внутренней границы:
  • esRaised - выпуклая;
  • esNone - нет;
  • esLowered - вдавленная.
Property EdgeOuter. TEdgeStyle; Определяет вид внешней границы:
  • esRaised - выпуклая;
  • esNone - нет;
  • esLowered - вдавленная.
Property ExpandDelay: Integer; Определяет задержку в миллисекундах перед показом скрытых команд меню. По умолчанию установлено значение равное 4000 миллисекунд.
Property Visible: TActionClient; Управляет видимостью полосы.

    Заметим, что для компонента TActionMainMenuBar (в отличие от TActionToolBar) свойство Visible не может иметь значение False (независимо от количества компонентов на форме). Иными словами, программа не может "спрятать" полосы главного меню.

    На следующем шаге мы рассмотрим компоненты TActionToolBar и TCustomizeDlg.




Предыдущий шаг Содержание Следующий шаг