- •Лабораторная работа 6. Средства автоматизации в Access (vba)
- •Применение условий в макросах
- •Запуск макроса из окна Конструктора макросов
- •Запуск макроса из области переходов
- •Запуск макроса при открытии базы данных
- •Запуск макроса из другого макроса
- •Вызов макроса из процедуры vba
- •Применение макросов
- •Работа с данными в формах и отчетах
- •Ссылки на формы, отчеты и их свойства
- •Ссылки на подчиненные формы и отчеты
- •Перемещение по данным
- •Обновление данных в формах и элементах управления
- •После подтверждения Del
- •До вставки
- •После вставки
- •После обновления
- •Изменение
- •Отсутствие в списке
- •Внесены изменения
- •При обновлении
- •Уход с записи
- •Получение фокуса
- •Потеря фокуса
- •Включение
- •Отключение
- •События клавиатуры
- •Клавиша вниз и Клавиша вверх
- •Нажатие клавиши
- •События мыши
- •Нажатие кнопки
- •Двойное нажатие кнопки
- •Перемещение указателя
- •Колесико мыши
- •Кнопка вниз и Кнопка вверх
- •События печати
- •Форматирование
- •Возврат
- •Фильтрация
- •События окна
- •Открытие
- •Закрытие
- •Загрузка
- •Выгрузка
- •Изменение размера
- •Событие ошибок
- •Событие таймера
- •Последовательности событий Access
- •Последовательность событий фокуса для элементов управления в формах
- •Последовательность событий изменения данных в элементе управления
- •Последовательность событий в форме, связанных с записями
- •Последовательность событий в формах
- •Последовательность событий клавиатуры и мыши
- •Последовательность событий в отчетах
Нажатие клавиши
Событие Нажатие клавиши (KeyPress) происходит, если пользователь нажимает и отпускает любую комбинацию клавиш для элемента управления или формы, имеющей фокус. В отличие от событий Клавиша вниз (KeyDown) и Клавиша вверх (KeyUp), данное событие не происходит, когда нажимаются функциональные клавиши, клавиши управления курсором и клавиши <Shift>, <Ctrl> или <Alt>. Кроме того, эти события различны для верхнего и нижнего регистров. Процедура обработки настоящего события имеет один аргумент: KeyAscii — целое число, представляющее код нажатой клавиши.
Если пользователь нажимает и удерживает некоторую клавишу, то возникают повторяющиеся события Клавиша вниз (KeyDown) и Нажатие клавиши (KeyPress) до тех пор, пока он не отпустит клавишу. Тогда возникает событие Клавиша вверх (KeyUp).
Если результатом нажатия клавиши является перевод фокуса с одного элемента на другой, то событие Клавиша вниз (KeyDown) возникает для первого элемента, а события Нажатие клавиши (KeyPress) и Клавиша вверх (KeyUp) — для второго.
Если в результате нажатия клавиши появляется диалоговое окно, то возникают события Клавиша вниз (KeyDown) и Нажатие клавиши, а событие Клавиша вверх (KeyUp) не возникает.
События мыши
События мыши происходят, когда какое-либо действие в форме или ее элементе управления выполняется с помощью мыши. События мыши не определены для элементов управления в отчетах, а также для флажков и переключателей в группах, они определены только для группы в целом.
Нажатие кнопки
Это наиболее широко распространенное событие. Оно возникает как в самой форме, так и в элементах управления формы. Для формы событие Нажатие кнопки (Click) возникает, когда пользователь щелкает мышью на пустой области формы или на области выделения записи в форме. Для элемента управления событие Нажатие кнопки (Click) возникает при щелчке мыши не только на самом элементе, но и на присоединенной к нему надписи. Однако для элемента управления оно возникает не только при щелчке мыши, но и в некоторых других случаях, а именно:
при выборе элемента из списка, независимо от того, был ли он выбран с помощью мыши или клавиш управления курсором с последующим нажатием <Enter>;
при нажатии клавиши <Пробел>, когда фокус установлен на флажке, переключателе или командной кнопке;
при нажатии клавиши <Enter> в форме, которая содержит кнопку свойства По умолчанию (Default) со значением Да, тогда именно на эту кнопку по умолчанию устанавливается фокус;
при нажатии клавиши <Esc> в форме, которая содержит кнопку свойства Отмена (Cancel) со значением Да;
при нажатии клавиш доступа, если они связаны с кнопками на форме.
Таким образом, процедуры обработки события Нажатие кнопки (Click) для кнопок запускаются независимо от того, каким образом эта кнопка выбрана — щелчком мыши, нажатием клавиши <Enter> или клавиши доступа. Процедура обработки события запускается только один раз. Если требуется, чтобы она запускалась несколько раз, пока кнопка остается нажатой, необходимо использовать свойство Автоматический повтор (AtitoRepeat) для кнопки. Если нужно определить, какой кнопкой мыши выполнялся щелчок, следует использовать события Кнопка вниз (MouseDown) и Кнопка вверх (MouseUp).