11.1.7 Встраивание в форму элементов управления и создание процедуры обработки события

Dec 23, 2011 11:17


В верхнее тематическое оглавление

Тематическое оглавление (Учебно-методическое )

1мед УЧ(Практический) 11.1.7 Встраивание в форму элементов управления и создание процедуры обработки события

Access XP
Тема 7 Встраивание в форму элементов управления и создание процедуры обработки события

Программа на языке Microsoft Visual Basic пишется в виде блоков, которые называют процедурами. Процедура содержит набор инструкций Visual Basic, с помощью которых выполняются действия или рассчитывается значение. Процедурой обработки события называют процедуру, выполняющуюся в ответ на событие, инициируемое пользователем или программой или генерируемое системой. Событием называют определенное действие, возникающее при работе с конкретным объектом. Microsoft Access реагирует на целый ряд событий: нажатие кнопки мыши, изменение данных, открытие или закрытие форм и т.д. С помощью процедуры обработки события пользователь имеет возможность определить собственные отклики на события, происходящие в форме, отчете или элементе управления. Существуют процедуры двух типов: Sub и Function.

Процедура-подпрограмма Sub выполняет действие или набор действий, но не возвращает значение. Пользователь имеет возможность создавать процедуры Sub самостоятельно или использовать процедуры обработки событий, определенные в Microsoft Access.
Процедура-функция Function (часто такие процедуры называют просто функциями) возвращает значение, например, полученное в результате расчетов. Visual Basic включает ряд встроенных функций; например, функция Now возвращает текущее значение даты и времени. В дополнение к встроенным функциям, пользователь имеет возможность самостоятельно создавать функции, которые называют специальными или пользовательскими функциями.
Впрочем, принципиальной разницы между этими типами подпрограмм нет, так как кроме непосредственной передачи значений в выражениях типа X=sin(Y) подпрограммы и функции могут возвращать значения и другими способами:
- через список аргументов, значения которые подпрограммы и функции могут менять,
- через общие переменные, не передаваемые явно, но видимые и вызывающей подпрограммой, и той, которая вызывается.
Более подробно об этом рассказывалось в лекциях.

Рассмотрим пример встроенной процедуры обработки событий (например: при помощи мастера кнопок):
  • Открыть форму Пациенты в режиме конструктора.
  • Вывести на экран панель элементов. Установить кнопку мастера встраивания в нажатое положение (вторая кнопка на панели с рисунком в виде палочки, из которой сыплется песок).
  • Щелкнуть по элементу под названием Кнопка. Затем в увеличенной области заголовка формы рядом с надписью растянуть небольшой квадратик. При этом должен вступить в действие мастер встраивания кнопки, который связывает с нажатием кнопки определенное действие. Пользуясь подсказками мастера связать с нажатием кнопки закрытие формы.
  • Закрыть конструктор. Сохранить. Проверить работоспособность.


  • Аналогично можно встроить кнопку на открытие диаграммы, печать формы и т.п.
    Теперь рассмотрим возможность создания процедуры Sub самостоятельно:
    Открыть форму Пациенты в режиме конструктора.
  • Вызвать панель элементов. Для этого на панели инструментов надо утопить кнопку с пиктограммой молотка и гаечного ключа. На панели элементов найти элемент с пиктограммой Аа (наз. надпись), затем растянуть небольшой прямоугольник рядом с
  • полем «Возраст». В этом прямоугольнике напечатать «+» и закрепить текст, щелчком мыши в любом месте формы.
  • Для написания процедуры обработка события щелкнуть правой клавишей мыши на надпись «+» (одновременно выделяя ее и вызывая контекстное меню) и в контекстном меню выбрать опцию обработка событий. В открывшемся окне Построитель выбрать Программы. Нажать ОК.


  • В процедуре - подпрограмме Sub для кнопки №…для события Нажатие кнопки (в этом месте моргает курсор), напечатать присвоение полю Возраст увеличение на 10: [Возраст] = [Возраст]+10
  • Используя условный оператор If … Then (если … тогда), определить ограничение и возврат на меньшее значение для возраста. На следующей строке напечатать If [Возраст] >100 Then [Возраст]=5
  • Для проверки правильности написания процедуры необходимо на панели инструментов нажать кнопку Компилировать, в виде стопки листов на которую сверху указывает стрелка.
  • Затем все закрыть, сохранить и проверить работу кнопки, открыв форму.


  • Оглавление оглавлений : http://uborshizzza.livejournal.com/27489.html
    Оглавление верхнего раздела : http://uborshizzza.livejournal.com/1723629.html
    Оглавление нижнего раздела : http://uborshizzza.livejournal.com/1723695.html

    Предыдущая тема - http://uborshizzza.livejournal.com/1733535.html
    Следующая тема - http://uborshizzza.livejournal.com/1734942.html

    Учебные материалы

    Previous post Next post
    Up