Лекция: Всплывающие формы и окна диалога

Всплывающая форма служит для вывода сообщений для пользователя или для ввода данных пользователем. Форма этого типа располагается поверх других открытых форм, даже если активной является другая форма. Всплывающая форма может быть модальной (монопольной) или немодальной. Если всплывающая форма является немодальной, пользователь имеет возможность, пока форма открыта, перейти к другим объектам и командам меню. Например, в форму Город можно добавить кнопку, которая открывает всплывающую форму Абонент, предоставляющую данные об абоненте, предоставленном в форме Город. Если всплывающая форма является модальной, доступ к любым другим объектам или командам меню, пока форма открыта, получить нельзя. Модальная всплывающая форма называется специальным диалоговым окном. Например, специальным диалоговым окном является форма, содержащая приглашение ввести параметр запроса. Для создания или изменения всплывающих форм и диалоговых окон предназначен ряд свойств, доступных через окно свойств формы, которые можно увидеть в таблице 4.

Таблица 4 – Свойства формы

Свойство Определяет
Всплывающее окно Открытие формы как всплывающей формы. Всплывающая форма всегда располагается над другими окнами Microsoft Access.
Модальное окно Открытие формы как немодальной (допускается переход в другие окна) или как модальной (форма сохраняет фокус вплоть до своего закрытия).
Тип границы Тип границы и элементы границы (заголовок, кнопка закрытия окна, оконное меню, кнопки развертывания и свертывания окна), используемые в форме.
Кнопка оконного меню Вывод формы в режиме формы с кнопкой оконного меню.
Кнопки размеров окна Вывод формы в режиме формы с кнопками свертывания и развертывания окна. Если свойство Тип границы (BorderStyle) имеет значение «Окна диалога», автоматически убираются кнопки свертывания и развертывания окна.
Кнопка закрытия Недоступность кнопки закрытия.
Полосы прокрутки Вывод формы с полосами прокрутки.
Поле номера записи Вывод формы с полем номера записи и кнопками перемещения по записям.
Область выделения Вывод формы с областью выделения записи.
Контекстные меню Вывод контекстных меню при нажатии правой кнопки мыши.
Выравнивание по центру Автоматическое выравнивание формы по центру в окне приложения при ее открытии.
Разрешить изменение Возможность любого изменения пользователем сохраненных в форме записей.
Разрешить удаление Возможность удаления записей пользователем через форму
Разрешить добавление Возможность добавления записей пользователем через форму
Работа с записями Отображение в форме, при ее открытии всех записей или только новой записи.
Режим по умолчанию Вывод формы в режиме таблицы, в виде простой формы (для одной записи) или в виде ленточной формы (для нескольких записей).
Допустимые режимы Возможность переключения между режимом формы и режимом таблицы.

Чтобы создать немодальную всплывающую форму, нужно в режиме конструктора открыть окно свойств создаваемой формы и ввести значение Да в ячейку свойства Всплывающее окно(PopUp). Далее, если следует запретить изменение размеров формы, в ячейке свойства Тип границы(BorderStyle) выбрать "Тонкая". Если задано значение "Тонкая", всплывающую форму можно будет перемещать, но нельзя изменять ее размеры. После этого создать макрос или процедуру обработки события, открывающие форму. Связать сформой или отчетом макрос или процедуру обработки события можно, указав имя макроса или процедуры обработки события в ячейке соответствующего свойства события. Например, можно ввести имя макроса или процедуру обработки события в ячейку свойства кнопки Нажатие кнопки.

Чтобы создать специальное диалоговое окно, необходимо:

1. Создать форму с требуемыми элементами управления.

2. В режиме конструктора открыть окно свойств формы и в ячейке свойства Всплывающее окновыбрать значение «Да».

3. Для свойства Модальное окновыбрать «Да».

4. В ячейке свойства Тип границывыбрать «Окна диалога». Если выбрано значение «Окна диалога», форма получает широкую границу и может включать только заголовок и оконное меню. Форма не может быть развернута, свернута в значок или изменена в размерах.

5. создать макрос или процедуру обработки события, открывающие форму, и связать их с формой или отчетом, указав имя макроса или процедуры обработки события в ячейке соответствующего свойства события.

Специальное диалоговое окно обычно содержит одну или несколько кнопок, запускающих макрос или процедуру обработки события, в которых данные, введенные в диалоговое окно, используются для выполнения других действий. Такими кнопками часто являются кнопки ОК и Отмена. Назначая для кнопок свойства По умолчаниюи Отмена, пользователь имеет возможность указать кнопку, получающую фокус при открытии формы, и кнопку, выполняющую функцию Отмена.

В качестве диалогового окна может быть временно открыта любая форма. Для этого можно воспользоваться режимом «Окно диалога» (константа acDialog в процедуре обработки события) макрокоманды Открыть Форму(OpenForm), связанной кнопкой открытия. При открытии формы со значением «Окно диалога» аргумента «режим окна» свойства формы Всплывающее окно(Popup) и Модальное окно(modal) получают значение «Да» до тех пор, пока форма не будет закрыта. При этом также отключаются определенные пользователем сочетания клавиш и некоторые другие системные функциональные клавиши, а также до закрытия формы приостанавливается выполнение макроса или процедуры обработки события. Форму можно скрыть, присвоив с помощью макрокоманды ЗадатьЗначение(Value) свойству Вывод на экран(Visible) формы значение «Нет»

В полях, определяющих свойство Условие на значение или вводящихся вячейку строки Условие отбора, квадратные скобки вокруг имен автоматически не добавляются. При вводе имен объектов пользователь должен ввести квадратные скобки самостоятельно. В противном случае Microsoft Access может интерпретировать введенные имена как текстовые значения и добавить прямые кавычки.

еще рефераты
Еще работы по информатике