Создание
многостраничных форм с элементом
Разрыв страницы
Рассмотрим
процедуру создания формы, подобной форме "Сотрудники" (Employees)
в приложении "Борей" (Northwind), но состоящую не из набора вкладок,
а из страниц, разделенных элементом управления
Разрыв страницы
(Page
Break).
-
На панели инструментов
База данных
(Database) нажмите стрелку справа от кнопки
Новый объект
(New object) и выберите элемент
Форма
(form).
-
В появившемся диалоговом
окне выделите элемент списка
Автоформа: в столбец
(Autoform: Columnar)
и в раскрывающемся списке выберите таблицу "Сотрудники" (Employees).
Нажмите кнопку
ОК.
-
Автоматически будет
создана форма, содержащая все поля из таблица "Сотрудники". Откройте
ее в режиме Конструктора (например, выбрав команду
Вид, Конструктор
(View,
Design View)).
-
Высота формы будет
около 7,5 см. Растяните нижний край области данных формы так, чтобы высота
области данных стала в два раза больше — 15 см.
Внимание
При проектировании
многостраничной формы нужно заранее спланировать, как разместить информацию
на ее страницах. Обычно логически связанные данные группируются и разносятся
по страницам формы. Однако при использовании элемента управления
Разрыв
страницы
(Page Break) важно, чтобы все страницы были одинаковой высоты,
т. к. в противном случае при переходе со страницы на страницу не всегда происходит
точное переключение, может оказаться, что в окне видна только часть нужной
страницы.
-
Пользуясь линейкой
разметки формы, слева от нее, заметьте деление напротив отметки 7,5 см и перетащите
туда с панели элементов элемент управления
Разрыв страницы
(Page Break).
Этот элемент управления всегда располагается у левой границы формы и определяет
конец текущей страницы.
-
Мысленно разделите
все поля на форме на две группы: те, что относятся к служебным данным о сотруднике,
и те, что относятся к его личным данным — так, как они разделены в форме "Сотрудники".
Перетащите все поля, относящиеся к личной информации, в нижнюю часть формы
— ниже элемента
Разрыв страницы
(Page Break). Эта часть формы будет
служить второй страницей.
-
Чтобы сделать форму
более наглядной, добавьте сразу под элементом
Разрыв страницы
(Page
Break) надпись с текстом Личные данные, а также растяните нижнюю границу раздела
Заголовок формы
(form Header) на высоту 1 см и добавьте в этот раздел
вычисляемое поле (без метки), содержащее выражение
(см. разд. "Создание
вычисляемых полей" этой главы).
= [Имя] & " " &
[Фамилия] (или =[FirstName] & " " & [LastName]). Отформатируйте
добавленные элементы так, чтобы их выделить.
-
В многостраничных формах
обычно не размещают полос прокрутки, это излишне, поэтому установите для свойства
Полосы прогрутки
(Scroll Bars) значение
Отсутствуют
(Neither)
в окне свойств формы. Мы практически закончили работу над содержимым формы,
должно получиться примерно то, что показано на рис. 9.39. Для наглядности
на рисунке мы обвели элемент
Разрыв страницы.
-
Перемещая рамку окна
формы, установите высоту окна так, чтобы самый нижний край был около отметки
5,5 см на линейке разметки (так, чтобы в режиме Формы высота окна формы была
примерно равна высоте заголовка формы плюс высота одной страницы — это 1 см
+ 7,5 см).
-
С помощью кнопки
Сохранить
(Save) на панели инструментов сохраните созданную форму с именем "Сотрудники
(с переводом страниц)".
-
Откройте форму в режиме
Формы (команда
Вид, Режим формы
(View, form View)).
Созданная
форма состоит из двух страниц. На первой странице размещены служебные данные
о сотруднике, а на второй странице — личные данные. Переключение между страницами,
как обычно, выполняется с помощью клавиш <PageUp> и <PageDown>.
Но кроме этого, для удобства переключения можно добавить на каждую страницу
специальные кнопки
Служебные данные
(Company Info) и
Личные данные
(Persorfal Info) с реакцией на событие
Нажатие кнопки
(Click), вызывающей
макрокоманду переключения на другую страницу GoToPage с заданным номером страницы
(в нашем примере — 1 или 2) или инструкцию DoCmd.GoToPage в процедуре VBA
(см.
также разд. "Создание процедур обработки событий" гл. 13).
Обратите
внимание на поле, которое расположено в заголовке формы. Это вычисляемое поле,
значение которого меняется для каждой записи в форме. Оно содержит имя и фамилию
сотрудника. Это поле предназначено для того, чтобы при переходе на вторую страницу
видеть имя и фамилию сотрудника — тогда пользователь всегда будет знать, с какой
записью таблицы он работает.
Рис. 9.39.
Использование элемента
Разрыв страницы
Чтобы придать
созданной форме законченный вид, нужно будет еще поработать с ее оформлением
и, возможно, преобразовать типы некоторых элементов, присоединенных к полям
источника данных
(см. также разд. "Преобразование одного элемента в
другой" этой главы и разд. "Оформление формы и ее элементов"
гл. 5).