Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие по информатике 2009.doc
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
12 Мб
Скачать
☆

6.3.16. TActionList - механизм действий

Этот компонент впервые введен в Delphi 4. Он не имеет видимого изображения и служит для поддержки механизма действий. Основная схема его использования такова. Вначале с помощью его редактора создается действие - объект класса TAction (редактор вызывается двойным щелчком на компоненте либо с помощью опции Action List Editor его вспомогательного меню, которое раскрывается после щелчка на нем правой кнопкой мыши).

Этот объект (на рисунке он имеет умалчиваемое имя Action1) имеет ряд свойств и событий, с помощью которых уточняется характер действия. Доступ к этим свойствам и событиям можно получить с помощью окна Инспектора Объектов. С действием можно связать группу свойств (Caption, Checked, Enabled, ShortCut и т.д.), которые будут помещаться в одноименные свойства компонентов, реализующих общее действие. Если с компонентом связан контейнер пиктограмм типа TImageList (свойство Images - не действия, а самого компонента TActionList), при реализации действия можно использовать одну из хранящихся в нем пиктограмм (Imagelndex). Чтобы действие подкреплялось программным кодом, для него обязательно следует определить обработчик события OnExecute.

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

PROPERTY ActionCount: Integer;

Содержит количество определенных в компоненте действий (только для чтения).

PROPERTY Actions[Index TcontainedAction: Integer]:

Позволяет программе обратиться к нужному действию (объекту класса TcontainedAclion) по его индексу Index.

PROPERTY Images: TCustomImageList;

Содержит имя компонента класса TImageList.

Содержит имя компонента класса TImageList.

Редактор компонента создает объекты класса TAction. Свойства класса TAction, в основном, определяют те значения, которые будут иметь поименные свойства всех компонентов или опций меню, связанных одним действием.

Свойства TAction:

PROPERTY Caption: String;

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

PROPERTY Checked: Boolean;

Содержит значение, которое будет устанавливаться в свойствах Checked.

PROPERTY DisableIfNoHandler: Boolean;

Указывает, будут ли запрещены для выбора связанные компоненты, если для действия не определен обработчик OnExecute.

PROPERTY Enabled: Boolean;

Содержит значение, которое будет устанавливаться в свойствах Enabled.

PROPERTY HelpContext: elpContext;

Содержит значение, которое будет устанавливаться в свойствах HelpContext.

PROPERTY Hint: String;

Содержит строку, которая будет устанавливаться в свойствах Hint.

PROPERTY Imagelndex: Integer;

Содержит индекс изображения в хранилище, указанном в свойстве Images компонента. Это изображение будет связано с компонентами данного действия.

PROPERTY Shortcut: TShortCut;

Содержит значение, которое будет устанавливаться в свойствах ShortCut.

PROPERTY Visible: Boolean

Содержит значение, которое будет устанавливаться в свойствах Visible.

События TAction:

PROPERTY OnExecute: TnotifyEvent;

Возникает при щелчке мышью на одном из компонентов, связанных общим действием. Обработчик этого события должен реализовать нужное действие.

ThintEvent = PROCEDURE (VAR HintStr: STRING; VAR CanShow: Boolean) OF OBJECT;

PROPERTY OnHint: THintEvent;

Возникает при перемещении указателя мыши над одним из связанных общим действием компонентов. Его умалчиваемый обработчик создает окно оперативной подсказки и показывает в нем строку HintStr.

PROPERTY OnUpdate: TnotifyEvent;

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