.....На уроке 2 мы с Вами создали заготовку дочернего (MDIChild) окна нашего приложения, в котором описали некоторые общие методы его поведения. Теперь на базе разработанной формы создадим окно, которое напрямую подключается к объекту базы данных ЛОЦМАН:PLM и выполняет некоторые общие методы работы с базой данных.
Шаг 4.1 - создание inherited формы.
В главном меню среды Delphi выберите пункт File -> New -> Other... На экран будет загружено окно выбора нового типа объекта, как на рисунке 4.1. Перейдите на закладку PLMCommander (см. рис. 4.1).
Рис. 4.1
На указанной закладке будут представлены формы, разработанные в приложении. Встаньте на форму fmMDIChild и нажмите кнопку OK. Будет создана новая форма на основе указанной. Новая форма польностью повторит все описанные в fmMDIChild свойства и методы и позволит Вам добавить новые. В окне инспектора свойств формы настройте указанные ниже свойства следующим образом:
TForm.
Свойство |
Значение |
Комментарий |
Caption |
VLMDIChild |
Заголовок окна |
Name |
fmVLMDIChild |
Имя формы в модуле |
Остальные свойства можно оставить без изменений. Не забудьте удалить вновь созданную форму из списка загружаемых форм при загрузке приложения (см. Урок 2 рис. 2.4).
Шаг 4.2 - Установка на форму компонентов библиотеки Visual Loodsman For Delphi.
Установите на форму компонент - TVLOwnerManager (менеджер формы) из вкладки компонентов LoodsmanDataAccess. Настройте в инспекторе свойств некоторые свойства данного компонента следующим образом:
TVLOwnerManager.
Свойство |
Значение |
Комментарий |
Name |
vlom |
Имя формы в модуле |
Остальные свойства можно оставить без изменений. Установите на форму компонент - TVLStatusBar (статусная строка) из вкладки компоненто VisualLoodsman. Настройте в инспекторе свойств некоторые свойства данного компонента следующим образом:
TVLStatusBar.
Свойство |
Значение |
Комментарий |
Name |
vlsb |
Имя формы в модуле |
Остальные свойства можно оставить без изменений.
Шаг 4.3 - Инициализация компонентов Visual Loodsman.
Встаньте на форму и перейдите в инспекторе свойств на закладку Events. Создайте событие формы OnShow и в теле модуля формы в разделе implementation и в теле процедуры события введите следующие строчки:
imlementation
uses VLDefinition;
...
procedure TfmVLMDIChild.FormShow(Sender: TObject);
begin
inherited;
Self.vlom.GetGlobalId;
// поместить информацию из глобальных переменных в собственные свойства компонента
Self.vlom.ReadBDAttributes;
// прочитать атрибуты собственного и родительского объектов базы данных
// а также экземпляра связи в визуальные компоненты,
// установленные на форме
Self.bbtOk.Visible:=Self.vlom.BDDCOM.CheckAccessLockLevel(Self.vlom.InBDID);
// если уровень доступа к собственному объекту базы данных
// не позволяет его редактировать, скрыть кнопку OK
end;
В общем виде все эти свойства можно заполнить вручную в инспекторе свойств компонента TVLOwnerManager. Однако в большинстве случаев заполнять их придется динамически программным образом. Передача информации производится через глобальные переменные приложения, которые описаны в модуле VLDefinition. Поэтому перед открытием формы необходимо позаботиться, чтобы в глобальных переменных были помещены необходимые идентификаторы.
Продолжение...