Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СУБД Практикум (Н.Л. КЕЛЛЕР, О.Ю. ЛИТКОВИЧ).docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
2.02 Mб
Скачать

Создание форм для ввода данных

Формами называются настраиваемые диалоговые окна, сохраняемые в базе данных в виде объектов специального типа. Формы Access являются объектами базы данных, так же как таблицы и запросы. Формы используются в приложении для ввода и отображения данных. Формы предоставляют более удобный способ просмотра и правки данных в таблицах, чем режим Таблицы. Формы содержат так называемые элементы управления, с помощью которых осуществляется доступ к данным в таблицах. Элементами управления являются текстовые поля для ввода и правки данных, кнопки, флажки, переключатели, списки, надписи, а также рамки объектов для отображения графики и объектов OLE. Создание форм, содержащих необходимые элементы управления, существенно упрощает процесс ввода данных и позволяет предотвратить ошибки. Формы предоставляют функциональные возможности для выполнения многих задач, которые нельзя выполнить другими средствами. Формы позволяют выполнять проверку корректности данных при вводе, проводить вычисления, и обеспечивают доступ к данным в связанных таблицах с помощью подчиненных форм.

Пример 11: Создать формы для ввода информации в каждую из ранее созданных таблиц (из примера 8).

Автоматическое создание формы на основе таблицы или запроса

Автоматически создаваемые формы (автоформы) бывают нескольких видов, каждый из которых отличается способом отображения данных.

  • Автоформа, организованная "в столбец".

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

  • Табличная.

Форма будет выглядеть так же, как обычная таблица.

  • Ленточная.

В такой форме поля каждой записи располагаются в отдельной строке. Это очень удобно для работы с большими массивами данных, поскольку данные располагаются в таком же порядке, как в простой таблице. Преимуществом именно этого представления формы по сравнению с табличным является то, что каждое поле представлено в виде отдельного элемента управления, которое можно оформить в любом стиле.

Автоматически созданная форма включает все поля выбранного источника данных.

Создадим простую форму для таблицы Клиенты с помощью средства автоматического создания форм:

  • Щелкните по ярлыку Формы в окне База данных и нажмите кнопку Создать. Появится диалоговое окно Новая форма

  • В списке диалогового окна Новая форма выделите один из вариантов автоформы, например: Автоформа: в столбец.

  • В поле со списком, находящимся в нижней части диалогового окна Новая форма, содержатся имена всех таблиц и запросов базы данных, которые могут быть использованы в качестве источника данных для формы. Щелкните левой кнопкой мыши по кнопке со стрелкой, чтобы раскрыть список, и выберите в нем нужный элемент - таблицу Клиенты.

  • Нажмите кнопку ОК.

В результате будет автоматически создана и открыта форма выбранного вида. Чтобы созданную форму можно было использовать в дальнейшем, ее необходимо сохранить. Для сохранения формы выберите команду Файл, Сохранить или нажмите на кнопку Сохранить на панели инструментов Режим формы. В поле Имя формы появившегося диалогового окна Сохранение введите Форма_Клиенты и нажмите кнопку ОК.

В результате мастером будет создана форма в соответствии с выбранными параметрами и сохранена с указанным именем (Форма_Клиенты), затем эта форма будет открыта в заданном режиме

Примечание:

Для любой формы можно изменить ее представление, определяющее режим отображения данных. В окне свойств формы можно выбрать один из пяти вариантов: Простая форма, Ленточная формы, Таблица. Чтобы изменить режим отображения данных, откройте форму в режиме Конструктора, Из Режим форма в режим Конструктор достаточно просто переключиться с помощью кнопки Вид на панели инструментов или с помощью команды Режим формы из меню Вид. Затем откройте окно свойств формы. Щелкните левой кнопкой мыши по кнопке со стрелкой, чтобы раскрыть список, и выберите соответствующий элемент в раскрывающемся списке Режим по умолчанию.

Создание формы с помощью мастера

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

Создадим с помощью мастера подчиненную форму для таблиц Офисы и Агенты (многотабличная форма):

  • Щелкните по ярлыку Формы в окне базы данных.

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

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

Важно: Первой должна быть выбрана таблица, в которой поле для связи со второй таблицей Агенты является ключевым (в данном случае - таблица Офисы).

  • В списке Доступные поля этого диалогового окна отображаются все поля выбранной таблицы. Добавление полей в форму позволит просматривать и редактировать данные выбранной таблицы. Чтобы добавить в создаваемую форму только некоторые поля, выделите каждое из этих полей и нажмите кнопку ">". Выделенное поле будет перемещено из списка Доступные поля в список Выбранные поля. Чтобы добавить в создаваемую форму сразу все поля из выбранной таблицы, нажмите кнопку ">>".

Примечание:

В форме поля появляются, в соответствии с последовательностью их расположения в списке Выбранные поля.

  • Повторите два предыдущих пункта для таблицы Агенты.

Примечание:

Из таблицы Агенты выбираются только те поля, которых нет в таблице Офисы (поля: ФамилияАгента, ИмяАгента и ОтчествоАгента).

  • Нажмите кнопку Далее для отображения второго диалогового окна.

  • Во втором диалоговом окне мастера необходимо выбрать вид представления данных – Подчиненные формы или Связанные формы.

Примечание:

Многотабличная форма может состоять из основной части и одной или нескольких подчиненных включаемых форм, т. е. быть составной. Подчиненная форма, как правило, строится на основе таблицы, подчиненной относительно таблицы-источника основной части формы. Мастер форм позволяет создать связанные формы, которые не включаются непосредственно в форму. При этом вместо подчиненной формы включается лишь кнопка, представляющая связанную форму. Если необходимо просмотреть подчиненные записи, связанная подчиненная форма вызывается на экран нажатием этой кнопки. Открывающееся содержимое связанной формы синхронизировано с текущей записью формы. Этот способ построения многотабличной формы удобен в сложных формах, перегруженных большим числом элементов управления, а также в случае, когда пользователю нет необходимости постоянно видеть связанные данные.

  • Выберите Подчиненные формы и нажмите кнопку Далее для отображения следующего диалогового окна Мастера форм.

  • В третьем диалоговом окне мастера можно определить вид формы. Выберите один из переключателей, например ленточный.

Примечание:

Если создать ленточную форму и оформить ее подходящим образом с помощью форматирования элементов управления, то увидим, что в хорошо оформленной ленточной форме данные просматривать намного удобнее, чем в табличной форме.

  • После выбора подходящего режима отображения данных в форме нажмите кнопку Далее для отображения следующего диалогового окна Мастера форм.

  • Четвертое диалоговое окно Мастера форм предназначено для выбора стиля оформления новой формы. Мастер предлагает несколько стандартных стилей оформления. Можно определить собственные стили оформления форм с помощью диалогового окна Автоформат. Тогда эти стили будут отображаться вместе со стандартными в этом диалоговом В окне Мастера форм. Выберите один из предлагаемых стилей и нажмите кнопку Далее.

  • В последнем диалоговом окне Мастера форм требуется указать названия формы и подчиненной формы. В поле ввода этого диалогового окна введите название формы: Форма_Офисы. Чтобы отобразить созданную мастером форму в режиме Формы, выберите переключатель Открыть форму для просмотра и ввода данных. А если после автоматического создания формы с помощью мастера требуется внести собственные изменения, выберите переключатель Изменить макет формы, тогда созданная форма будет открыта в режиме Конструктора. Если необходима справка о работе с созданной формой, установите флажок Вывести справку по работе с формой?, после чего нажмите кнопку Готово.

В результате мастером будет создана форма в соответствии с выбранными параметрами и сохранена с указанным именем (Форма_Офисы), затем эта форма будет открыта в заданном режиме.

Созданные формы Форма_Клиенты и Форма_Офисы готовы к использованию. Однако можно улучшить их внешний вид, изменив некоторые параметры оформления в режиме Конструктора.

Работа с формой в режиме Конструктора

Отредактируем форму "Форма_Клиент" в режиме конструктора:

  • добавим заголовок Клиенты;

  • заменим надписи полей НаименованиеКлиента и НомерСчетаКлиента на Клиент и № счета соответственно.

Откройте форму "Форма_Клиент" в режиме Конструктора

При работе в режиме Конструктора форм используются следующие элементы окна приложения.

  • Панель инструментов Панель элементов. При переходе в режим Конструктора эта панель инструментов отображается на экране и предназначена для добавления в форму новых элементов управления.

Примечание:

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

  • Панель инструментов Конструктор форм. Панель содержит кнопки, предназначенные для разработки форм. Основные команды, меню, используемые в режиме Конструктора форм, продублированы в виде кнопок на панели инструментов Конструктор форм.

  • Панель инструментов Формат (форма/отчет) предназначена для форматирования выделенных элементов управления. Форматирование элемента управления включает такие действия, как задание цвета фона и рамок, задание стиля и цвета текста.

  • Вертикальная и горизонтальная линейки предназначены для разметки формы по заданным размерам и выделения нескольких соседних элементов управления, лежащих в одном вертикальном или горизонтальном сегменте макета формы от одной отметки на линейке до другой.

  • Правая граница макета формы позволяет задать ширину формы. Чтобы изменить ширину формы, перетащите правую границу макета формы с помощью мыши вправо или влево.

  • Нижняя граница макета формы позволяет определить высоту формы. Чтобы изменить высоту формы, перетащите нижнюю границу макета формы с помощью мыши вниз или вверх.

  • Вертикальная и горизонтальная полосы прокрутки позволяют просматривать части формы, оказавшиеся за границами экрана в режиме Конструктора.

Структура формы

Макет формы состоит из разделов. Любая форма может включать следующие разделы:

  • раздел Заголовок формы определяет верхнюю часть формы. Этот раздел добавляется в форму вместе с разделом примечания формы. В область заголовка формы можно поместить текст, графику и другие элементы управления. При печати многостраничной формы раздел заголовка отображается только на первой странице, а раздел примечание будет отображен только внизу последней страницы.;

  • раздел Верхний колонтитул (Нижний колонтитул) определяет верхний колонтитул страницы при печати формы. Этот раздел отображается только тогда, когда форма открыта в режиме Предварительного просмотра. При печати многостраничной формы верхний колонтитул отображается вверху каждой страницы (нижний колонтитул – внизу);

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

Из всех перечисленных разделов обязательным является только раздел области данных. Высоту области любого раздела формы можно изменить с помощью мыши, перетаскивая нижнюю часть раздела вверх или вниз.

Примечание:

При создании новой пустой формы при помощи Конструктора форм разделы заголовка и примечания не добавляются. При необходимости выберите команду Вид, Заголовок/примечание формы. Если форма уже содержит эти разделы, то команда Заголовок/примечание формы будет отмечена флажком. Для удаления разделов заголовка и примечания формы сбросьте этот флажок.

Для добавления или удаления разделов верхнего и нижнего колонтитулов страницы выберите команду Вид, Колонтитулы. Если форма уже содержит эти разделы, то команда Колонтитулы будет отмечена флажком. Для удаления разделов верхнего и нижнего колонтитула страницы сбросьте этот флажок.

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

Высоту раздела формы можно изменить, перетаскивая границу раздела при помощи мыши. Для этого указатель мыши помещается над границей раздела так, чтобы он принял вид горизонтальной черты с двумя вертикальными стрелками, нажимается левая кнопка мыши и перетаскивается граница раздела для получения нужного размера.

Высота раздела области данных определяется вертикальным размером окна формы, а также размером заголовка и примечания формы. Для изменения высоты раздела области данных его нижняя граница перетаскивается при помощи мыши вверх (для уменьшения высоты) или вниз (для увеличения). В режиме Формы вертикальная полоса прокрутки в окне формы появляется только для просмотра раздела области данных.

Создание заголовка

  • Расширим область заголовка формы, установив курсор мыши на границу области заголовка и области данных и перемещая эту границу на нужное расстояние.

  • Создадим графический элемент Надпись. Начинается создание элемента щелчком мыши на кнопке панели элементов Надпись, после чего становятся доступными кнопки форматирования на панели Формат (форма/отчет). Теперь может быть выбран нужный шрифт и другие параметры оформления.

  • Переместим курсор мыши на место начала текста в области заголовка формы (предварительно расширив ее курсором мыши). Нажмем кнопку мыши и, не отпуская ее, растянем рамку текста до нужного размера. Введем текст (Клиенты).

  • Завершим создание элемента Надпись нажатием клавиши <Enter> или щелчком мыши вне рамки элемента.

Замена надписи полей

  • в области данных установить курсор в надпись поля НаименованиеКлиента и заменить на Клиент;

  • уменьшить размер надписи;

  • повторить действия для надписи поля НомерСчетаКлиента.

Задание для самостоятельной работы

Создать для ввода информации в таблицы базы данных (БД) рассмотренной в главе Нормализация (Товар-Накладная) простую и подчиненную формы.