Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Плещёв ВУМИП 2012-07-06.doc
Скачиваний:
66
Добавлен:
13.05.2015
Размер:
9.35 Mб
Скачать

2.3.8.5. Синхронизация объектов (ActionList)

Компонент содержит список объектов действий ActionтипаTAction(процедур), которые используются одновременно с другими объек­тами (например, процедура обработки нажатия кнопки и выбран­ного пункта меню). Основные свойства подобны свойствам меню. Проектирование этого объекта ведется редактором, который вызывается командойAction List Editorконтекстного меню.

Специфичные события

OnExecute‑ возникает при выборе объекта действия. В процедуре обработки этого события размещается код обработки события при выборе этого действия любым способом, включая программный.

OnUpdate‑ возникает, когда приложение находится в режиме ожидания. Обычно в обработчике этого события размещается код обработки заблокированного объекта, связанного с объектом действия.

OnHint‑ используется для вывода общей подсказки; при этом подсказки объектов, связанных с этим действием, отключаются. Если в свойствеActionобъекта указать объектAction, то объект будет связан с указанным действием.

Пример: Button2.Action:=Action3; //при нажатии кнопки Button2

//выполняется процедура события OnExecuteобъекта действияAction3.

2.3.8.6. События приложения (ApplicationEvents)

Компонент (панель Additional) позволяет обрабатывать события приложения на этапе проектирования в отличие от событий объ­ектаApplication(п.2.2.2.3) и имеет дополнительное событиеOn­Mes­sage, которое наступает при получении любого сообщенияWindows, адресованного приложению. ПараметрMsg:tagMsgсодержит полеMessageс кодом сообщения. Коды всех сообщений находятся в модулеMessages.

2.3.9. Структурированные компоненты

2.3.9.1. Панели инструментов (ToolBar)

Панель (панельWin32) является контейнером для создания инстру­ментальных панелей и имеет средства управления дочерними объ­екта­ми (обычно кнопкамиToolButton). Панель автоматически при разме­ще­нии устанавливается у верхнего края формы.

Специфичные свойства панели

EdgeBorder‑ составное свойство видимости сторон панели.

EdgeInner, EdgeOuter‑ вид кромок с внутренней и внешней стороны.

ButtonWidth, ButtonHeight‑ ширина и высота кнопок панели.

DisabledImages/Images/HotImages‑ имя списка картин (ImageList), отобра­жающих состояние кнопок: отключенное/рабочее/мышка на кнопке.

Flat,Transparent‑ стиль прозрачных кнопок и панели (True).

Indent,RowCount‑ сдвиг левой границы в пикселях; число рядов кнопок.

List‑ заголовки кнопок справа от кнопок (True), а не под ними (False).

ShowCaptions‑ текстовые заголовки кнопок изображаются на панели (True).

Wrapable‑ перенос кнопок на следующую строку короткой панели (True).

Кнопки создаются командой New Buttonиз контекстного меню, хра­нят­ся в массивеButtons, а их число находится в свойствеButtonCount. Ко­ман­дойNew Separatorсоздается кнопка‑разделитель между группами кнопок.

Специфичные свойства кнопки панели

AllowAllUp‑ все кнопки группы могут быть одновременно отжатыми.

Down‑ состояние нажатой кнопки (True).

DropdownMenu‑ ссылка на контекстное менюPopupMenu(кнопка‑меню).

Grouped‑ кнопка входит в состав группы кнопок (True).

ImageIndex‑ номер картинки из списка, на который ссылается панель.

Indeterminate‑ разрешает (True) или запрещает (False) выбор кнопки.

Index‑ порядковый номер кнопки.

Marked‑ кнопка изображается как отключенная (покрыта сеткой).

MenuItem‑ имя пункта меню, связанного с кнопкой.

Style‑ тип кнопки:tbsButton(командная),tbsCheck(переключатель),tbsDropDown(меню),tbsSeparator(разделитель),tbsDivider(широкий раз­де­­литель в виде вертикальной черты).

Wrap‑ следующая кнопка размещается на новой строке панели.

Общая схема создания панели: размещается и заполняется картинками (иконками) список ImageList; размещается панель и связывается со списком картинок через свойствоImages; размещаются кнопки со ссылками на номера картинок из списка (свойствоImageIndex); разрабатываются процедуры обработки щелчков мыши по кнопкам.