Access 2002

Два важных момента


Здесь есть два важных момента. Во-первых, для создания новой формы вызывается отдельная функция, FormWizFinish, а во-вторых, эта функция располагается в отдельном модуле базы данных — basFormWizFinish. Поскольку процедура создания нового объекта может быть очень длинной, а вызывается она после завершения работы с мастером, нет смысла загружать ее в самом начале и все это время держать в памяти. Поместив процедуру в отдельный модуль, вы гарантируете, что он будет загружен в самом конце, когда в нем возникнет необходимость. Если же пользователь закроет окно мастера щелчком на кнопке Cancel, загружать этот модуль и вовсе не придется.

Итак, для создания описанной пользователем формы используется отдельная функция, FormWizFinish, которую вы найдете в модуле basFormWizFimsh базы данных мастера на компакт-диске. Для экономии места в этом разделе приводятся только выдержки из ее кода. Функция FormWizFinish принимает единственный параметр, frmWiz, являющийся указателем на главную форму мастера. Всю остальную информацию она сможет получить из переменных этой формы, объявленных как Publ ic.

Нетрудно догадаться, что первым действием функции FormWizFinish является создание нового объекта формы. Это делается путем вызова функции CreateForm без параметров. В ответ на основе текущего шаблона Access создает в текущей базе данных новую форму и возвращает указатель на ее объект, который присваивается переменной frmNew. Теперь через эту переменную можно настраивать

свойства нашей новой формы. Мы удаляем селектор записей, навигационные кнопки и полосы прокрутки, а также изменяем размер формы. Кроме того, как в следующем фрагменте кода, форме присваивается новый заголовок и изменяется размер ее сетки. Заголовок мы берем из переменной DialogCaption главной формы мастера.

Комментарии закрыты