.....Как правило при создании многооконного (MDI) приложения большинство форм имеют набор одинаковых свойств и процедур (например процедура закрытия формы). Для того, чтобы не дублировать их при создании новых форм используется следующий метод. Создается базовая MDIChild форма, в которой описываются общие свойства и процедуры. После этого все новые формы создаются на базе созданной. В результате чего процесс программирования упрощается. Именно этим приемом мы и займемся в данной главе.
Шаг 2.1 - Создание пункта главного меню.
.....Но прежде всего несколько "оживим" главное меню приложения. Дважды щелкните левой кнопкой мыши на компоненте iml - список иконок (TImageList). На экран загрузится окно редактора списка иконок (см. рис. 2.1).
Рис. 2.1
.....Добавьте в список иконку из файла LibOKP.BMP, который находится в папке ..\Tutorial\Icon каталога установки библиотеки (см. рис. 2.1). Затем дважды щелкните левой кнопкой мыши на компоненте am - менеджер действий (TActionManager), на экран загрузится окно редактора компонента (см. рис. 2.2).
Рис. 2.2
.....Создайте новое действие (TAction). В окне инспектора свойств настроим некоторые свойства компонента следующим образом:
TAction.
Свойство |
Значение |
Комментарий |
Caption |
Классификатор ОКП |
Заголовок действия |
Category |
Справочники |
Группа, в которую входит данное действие |
Hint |
Справочник - "Классификатор ОКП" |
Контекстная подсказка |
ImageIndex |
0 |
Номер иконки в списке iml (нумерация начинается с 0) |
Name |
LibOKP |
Имя компонента в модуле |
.....Настроенное таким образом действие будет отображаться в окне редактора так, как показано на рисунке 2.2. Далее перейдем в окно Object TreeView на ветку дерева Item пункта меню Справочники, как показано на рисунке 2.3.
Рис. 2.3
.....Щелкните левой кнопкой мыши на ветке Items (см. рис. 2.3) и в контекстном меню выберите пункт AddItems. Будет создано подменю с единственным пунктом (объект TActionClientItem). В окне инспектора свойств настройте свойство Action следующим образом:
TActionClientItem.
Свойство |
Значение |
Комментарий |
Action |
LibOKP |
Установите указатель на действие LibOKP |
.....Пункт подменю станет связанным с действием LibOKP. Все остальные свойства объекта TActionClientItem будут настроены автоматически. После компиляции проекта пункт меню Справочники -> Классификатор ОКП будет недоступен, т.к. не создана процедура действия LibOKP.
.....Продолжение...