- •Часть 2
- •Лабораторная работа № 9. Макросы вAccess. Первое знакомство
- •Вводные замечания
- •Макрокоманды для работы с данными
- •Макрокоманды для управления Access
- •Макрокоманды для управления объектами
- •Макрокоманды для импорта и экспорта данных
- •Макрокоманды для решения задач программирования
- •Задание
- •Лабораторная работа № 10. Связывание макросов с событиями, отладка макросов, макрогруппы, связь с меню
- •События базы данных
- •События, связанные с клавиатурой и мышью
- •События данных
- •События управления объектами
- •События печати
- •Лабораторная работа № 12. Работа с приложениями и программами. Оформление меню
- •Инструкция выбора select
- •Задание условий в предложении where
- •Применение агрегатных функций и вложенных запросов в инструкции Select
- •Вложенные запросы в инструкции выбора
- •Задание Контрольные вопросы Лабораторная работа № 14. Работа с инструкциямиDdLиDmLязыкаSql
- •Инструкции определения данных (ddl)
- •Создание индекса инструкцией Create Table
- •Создание индекса инструкцией Create Index
- •Создание индекса инструкцией Alter Table
- •Инструкции манипулирования данными (dml)
- •Задание
- •Контрольные вопросы
- •Оглавление
Лабораторная работа № 10. Связывание макросов с событиями, отладка макросов, макрогруппы, связь с меню
Цель работы: Освоить процедуры связывания макросов с событием; отладки макросов; создания макрогрупп; создания макросов, связанных с меню.
Теоретическая часть этой работы изложена в учебном пособии «Базы данных» [1].
Рассмотрим вопросы, не нашедшие отражения в указанном пособии.
События базы данных
Поскольку макросы часто требуется «привязывать» к событиям, разработчик базы данных должен иметь представление о том, какие события вообще существуют. Это позволит составить план разработки приложения и выбрать верный путь решения пользовательских задач — запрограммировать реакцию СУБД на действия пользователя и обеспечить доступ оператора к инструментам и подпрограммам. Для удобства разобьем события на группы так, как это было сделано с макрокомандами.
События, связанные с клавиатурой и мышью
Нажатие кнопки (Click). Нажатие кнопки мыши. Подразумевается, что пользователь нажимает и отпускает левую кнопку мыши.
Двойное нажатие кнопки (мыши) (DblCIick). Название говорит само за себя.
Кнопка вниз (MouseDown). Нажатие пользователем кнопки мыши. Это событие фиксируется уже тогда, когда пользователь еще не успел отпустить кнопку мыши.
Кнопка вверх (MouseUp). Момент отпускания кнопки мыши. Такой метод позволяет избежать путаницы команд в тех случаях, когда несколько меню перекрывают друг друга.
Перемещение указателя (MouseMove). Перемещение указателя мыши пользователем.
Нажатие клавиши (KeyPress). Нажатие любой клавиши на клавиатуре с точки зрения пользователя (нажал и отпустил).
Клавиша вниз (KeyDown). Момент нажатия клавиши на клавиатуре.
Клавиша вверх (KeyUp). Момент, когда нажатая клавиша отпущена.
События данных
До обновления (BeforeUpdate). Это событие возникает, когда пользователь внес изменения в элемент управления или запись, но обновление данных еще не успело произойти. Обработка этого события — последняя возможность oтменить изменение.
После обновления (AfterUpdate). Это событие возникает после обновление данных в элементе управления или записи.
Удаление (Delete). Момент удаления записи пользователем, но до подтверждения и фактического удаления записи.
До подтверждения Del (BeforeDelConfirm). После того как пользователь удаляет одну или несколько записей, программа открывает окно диалоги для запроса подтверждения. Это событие соответствует моменту, когда записи пользователем уже удалены, но окно диалога еще не открыто. Данному событию предшествует событие Удаление.
После подтверждения Del (AfterDelConfiгm). Событие фиксируется после того, как пользователь подтвердил удаление записей, или отменил его.
До вставки (BeforeInsert). Ввод первого символа в новую запись, но до добавления записи в базу данных.
После вставки (AfterInsert). Добавление новой записи в базу данных. Изменение (Change). Изменение содержимого поля.
Текущая запись (Current). Выбор записи или выполнение повторного запроса к источнику данных формы.
Отсутствие в списке (NotInList). Ввод в поле со списком значения, отсутствующего в списке. Такое событие всегда возникает «по вине» пользователя и его (события). Обработка может повысить степень «дружественности» приложения.
При обновлении (Updated). Изменение данных в объекте OLE.