Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Управление исходным кодом в MS Access.doc
Скачиваний:
6
Добавлен:
01.03.2025
Размер:
198.14 Кб
Скачать

II. Практическая часть

1.Модули и функции

На простом примере несложно показать, как взаимодействуют модули, макро­сы и программы на VB. Отдельные подпрограммы следует хранить в модулях. Стандартный модуль создается исключительно по желанию разработчика. Программист сам решает, какие программы в нем разместить. Стан­дартный модуль может служить двум целям: созданию подпрограмм и функций общего доступа и возможности копирования набора подпрограмм как единого блока. Использование модулей показано на нескольких примерах. Допустим, необходимо создать программу и обес­печить к ней постоянный доступ пользователя. Для этого надо выполнить сле­дующие действия:

  1. Выбрать вкладку «Модули» и нажать кнопку «Создать» (Рис.1.1).

Рис.1.1 Модули

  1. Ввести в окно модуля текст программы.

Эта программа позволяет выводить на экран каждую минуту окно с сообщени­ем. Она будет работать до тех пор, пока пользователь не нажмет в модальном окне кнопку Cancel.

  1. Нажать кнопку «Save» и сохраните модуль (я назвал его Таймер).

  2. Перейти на вкладку «Макросы» и нажать кнопку «Создать».

  3. Выбрать из списка в новом макросе макрокоманду «ЗапускПрограммы» (Рис. 1.2) , а в каче­стве ее аргумента задайте имя функции Taimer1() Для этого можно использовать построитель выражений (Рис. 1.3). Рис 1.2 Запуск макроса

Рис 1.3 Построитель выражений

  1. Закрыть окно макроса, сохранив макрос (я также назвал его Таймер).

На вкладке макросов есть кнопка Запуск. Теперь, если запустить макрос Таймер, будет выполнена функция Taimer1().

Рассмотрим текст программы. Инструкция Dim обозначает создание новых переменных. Переменные и их тип рекомендуется описывать в начале програм­мы. У нас переменных две:

otvet - номер кнопки, нажатой в окне диалога;

MyTime - число секунд.

Системная переменная Timer хранит число секунд, прошедших с начала текущих суток. Цикл While условие ... Wend довольно часто используется в VB. Он работает, пока выполняется условие. Оператор If условие Then ... End lf позволяет выводить окно диалога, только когда разница между текущим временем и временем, зафиксированным в переменной MyTime, превысит 60 секунд. Для создания окна диалога используется функция MsgBox() с тремя аргумента­ми: текстом сообщения в окне, системной константой для выбора вида кнопок и текстом для заголовка окна. Константа vbOKCancel указывает на то, что в окне должны быть две кнопки: ОК и Cancel. Такая конструкция очень удобна, когда надо организовать диалог с пользователем и позволить ему что-нибудь отменить. Кнопки в окне диалога нумеруются, начиная с единицы, и, когда пользователь на­жимает кнопку, функция возвращает ее порядковый номер. У таких программ есть свои особенности. Во-первых, во время их выполнения для пользователя включается режим ожидания - указатель мыши приобретает вид песочных часов и доступ к Access блокируется. Во-вторых, такая программа должна быть оформлена именно как функция (Function), а не как подпрограмма (Sub). При этом функция не обязана возвращать какое-либо значение. Подвожу итоги. Программу, написанную на VB, можно запустить нескольки­ми способами. Во-первых, разрешается использовать ее как обработчик событий. Когда событие происходит, программа выполняется. Этот способ обсуждался на страницах книги. Во-вторых, программу можно запустить через макрос, а точнее, с помощью макрокоманды ЗапускПрограммы. В качестве ее аргумента исполь­зуется имя функции Visual Basic. А сам макрос запускается кнопкой на вкладке Макросы или командой из главного меню Сервис => Макрос => Выполнить макрос. В-третьих, программы можно запускать в окне редактора Visual Basic.