Cоздание модуляформы в СУБД Access 2003

RSS, Twitter, Vkontakte, Facebook

Visual Basic в Access 2003

Cоздание модуля обработки некоторого события в Access 2003

Автор: Владимир Ткаченко

Источник: Обучение в интернет

Итак, в СУБД Access 2003 для каждого объекта (окон, меню, кнопок и т.д.) определены возможные события. Необходимо отметить, что события можно разделить на несколько типов: события мыши, клавиатуры, печати, окна, данных и т.д. Щелчки мыши, нажатия клавиш клавиатуры и т.д. - это события, которые возникают от действия пользователей. Отклики на события, которые возникают от действий пользователей, могут быть в СУБД Access 2003 реализованы в виде модулей. Основное содержание модулей — это процедуры на языке VBA.

Рассмотрим создание модуля формы (процедуры на языке VBA) путем обработки некоторого события, связанного с каким-либо элементом формы, например с нажатием кнопки. Здесь рассматриваемое событие – нажатие, а элемент формы – кнопка. Нажатие осуществляется с помощью мыши. Нажатие кнопки - это одно из наиболее широко распространенных событий.

Сначала создадим новую форму в базе данных Access 2003. Для этого на вкладке Формы в окне базы данных Access 2003 щелкаем на пиктограмме Создать, и в появившемся окне Новая форма выбираем способ создания формы - Конструктор. Далее щелкаем на кнопке ОК.

В открывшуюся пустую форму, которая не содержит ни одного модуля, вставляем кнопку. Для этого на панели элементов выбираем элемент Кнопка и щелкаем на ней, затем указатель мыши переводим в область формы и щелкаем в области данных. Таким образом, рисуем кнопку в форме.

форма с кнопкой в БД Access 2003

Переименуем кнопку1 в кнопку Пуск (изменим подпись непосредственно на кнопке) и присвоим ей имя cmdPusk (cmd или command button- командная кнопка) в окне диалога Кнопка: Кнопка1.

окно диалога Свойства кнопки

Сохраним форму под названием FormaP.

форма Пуск в БД Access 2003

Далее в форме, открытой в режиме конструктор, щелкаем на кнопке Пуск и в диалоговом окне "Кнопка: cmdPusk" на вкладке События выбираем событие - Нажатие кнопки. Необходимо отметить, что все события, на которые может реагировать кнопка, перечислены на вкладке События.

окно диалога в  Access 2003  на вкладке События

Затем щелкаем на кнопке с тремя точками в окне диалога "Кнопка: cmdPusk" или на пиктограмме Построитель на панели инструментов.

пиктограмма Построитель на панели инструментов Access 2003

Откроется окно диалога Построитель, в котором выделяем команду Программы, и нажмем ОК.

окно диалога Построитель в Access 2003

Запускается редактор Visual Basic и в окне "Project - Деканат" отображается иерархическое дерево объектов приложения "Деканат (Training_students_O)", в котором появился новый модуль формы Form_ FormaP.

окно редактора кода в Access 2003

А в окне редактора кода (Code) будет отображаться код программы для кнопки Пуск.

В окне редактора кода Access 2003 отображается код модуля на VB

В окне редактора кода Training_students_O - Form_FormaP (Code) отображается код модуля объекта, который содержит непосредственно код программы на Visual Basic. Этот модуль содержит первый и последний операторы процедуры, т.е. представляет собой заготовку процедуры Click, которая доступна только внутри модуля формы FormaP или модуля классов. Здесь Privat означает, что данная процедура может применяться только внутри конкретного модуля. Тип процедуры Sub - это процедура-подпрограмма. Далее отображается имя процедуры события - cmdPusk_Click (). Имя процедуры состоит из имени объекта cmdPusk, подчеркивания и названия события Click (). В конце модуля отображается опрератор End Sub - завершение процедуры.

Процедура обработки события Click (нажатия кнопки) объекта cmdPusk - это инструкция или набор взаимосвязанных инструкций, которые должны быть заключены между операторами Privat Sub cmdPusk_Click () и End Sub. Нажатие кнопки будет автоматически запускать процедуру событий. Какие инструкции может выполнять кнопка при нажатии? Примеры процедур, которые обрабатывают события Click, рассмотрим в следующей статье.

Подпишитесь на мою рассылку СУБД MS Access 2003 -это просто!