Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методическое пособие для самостоятельных работ.doc
Скачиваний:
21
Добавлен:
16.11.2019
Размер:
2.89 Mб
Скачать

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

Этот компонент не имеет видимого изображения и служит для поддержки механизма действий (см. п. 2.7).

Основная схема его использования такова. Вначале с помощью его редактора создается действие - объект класса TAction (редактор вызывается двойным щелчком на компоненте либо с помощью опции ActionList Editor его вспомогательного меню, которое раскрывается после щелчка на нем правой кнопкой мыши - рис. 3.18.

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

В свойства Action тех компонентов, активизация которых должна сопровождаться одним и тем же действием (например, в свойства Action опции меню и кнопки инструментальной панели), помещается имя только что определенного действия (Action1). В результате выбор опции или нажатие кнопки вызовут один и тот же метод (OnExecute), в меню появится пиктограмма (Imageindex), такая же пиктограмма будет у кнопки, у них будет одинаковые названия (Caption), оперативные подсказки (Hint) и т. д

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

Свойство

Описание

property ActionCount: Integer;

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

property Actions[Index: Integer]: TContainedAction;

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

property Images: TCustomImageList;

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

type TActionListState = (asNormal, asSuspended, asSus-pendedEnabled) ; property State: TActionListState;

Состояние действий: asNormal - нормальное; asSuspended - механизм действий отключен, их свойства Enabled не изменены; asSuspendedEnabled - механизм действий отключен, но их свойства Enabled имеют значения True

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

Свойства TAction:

Свойство

Описание

property Caption: String;

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

property Checked: Boolean; 

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

property DisableIfNoHandler: Boolean; 

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

property Enabled: Boolean; 

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

property HelpContext: THelpContext;

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

property Hint: String; 

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

property Imagelndex: Integer;  

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

property Shortcut: TShortCut;

 

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

property Visible: Boolean; 

 

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

Рис. 3.19. Редактор компонента TActionList