Добавление, удаление и перемещение элементов управления
Для добавления новых полей на страницу доступа к данным в режиме Конструктора предназначено окно Список полей (Field List), представленное. Если оно скрыто, его можно отобразить с помощью команды меню Вид, Список полей (View, Field List) или кнопки Список полей (Field List) на панели инструментов Макет страницы (Page Design).
В окне Список нолей отображаются списки всех таблиц и запросов открытой базы данных. Еще одно окно — Структура данных (Data Outline)— имеет очень похожий вид, но отображает структуру данных, добавленных на страницу: уровни группировки и набор записей, что является источником данных для открытой страницы доступа к данным. Это окно можно отобразить командой меню Вид, Структура данных (View, Data Outline) или кнопкой Структура данных (Data Outline) на панели инструментов Макет страницы (Page Design). В этих окнах для каждой таблицы, запроса или набора записей можно отобразить список полей. Списки таблиц, запросов и их полей представлены в виде иерархии, подобной иерархии папок и файлов, отображающейся в окне приложения «Проводник» (Explorer) Windows. Каждый уровень иерархии можно раскрыть с помощью кнопки с изображением значка плюс (+) или свернуть с помощью кнопки с изображением значка минус (— ), отображенного рядом с элементом верхнего уровня иерархии.
- В диалоговом окне Список полей раскройте список таблиц, щелкнув по кнопке с изображением значка плюс (+) напротив надписи Таблицы (Tables).
- Раскройте список полей таблицы «Сотрудники» (Employees), щелкнув по кнопке с изображением значка плюс (+) напротив имени этой таблицы.
- С помощью полосы прокрутки переместитесь по списку полей и найдите поле, которое нужно добавить на страницу, выделите его, щелкнув левой кнопкой мыши.
- Нажмите кнопку Добавить на страницу (Add To Page) или перетащите поле в нужное место на странице с помощью мыши.
На странице появится текстовое поле, привязанное к выбранному полю, которое становится для этого элемента управления источником данных.
Кроме полей, на страницу доступа к данным можно добавлять другие элементы управления, однако в этом случае источник данных придется назначить полю вручную в окне свойств.
Полученная нами страница «Личная карточка», описанная , имеет поля «Обращение» (TitleOfCourtesy) и «Подчиняется» (ReportsTo), которые отображаются как текстовые поля, а должны отображаться как поля подстановки, т. е. в виде списков с возможными значениями. Необходимо исправить этот недостаток, для чего создадим данные списки в режиме Конструктора заново и воспользуемся Мастером создания полей’подстановки.
Замечание
Чтобы в режиме Конструктора отображались диалоговые окна построителей и мастеров, упрощающих работу, необходимо оставить нажатой кнопку-переключатель Мастера (Control Wizards) на панели инструментов Панель элементов (Toolbox).
Сначала нужно удалить старые элементы управления:
- Откройте страницу «Личная карточка» в режиме Конструктора.
- Проверьте, что кнопка-переключатель Выбор объектов (Select Objects), находящаяся на панели инструментов Панель элементов, нажата.
- Выделите элемент управления текстовое поле «Обращение» (TitleOfCourtesy), для чего щелкните по нему левой кнопкой мыши.
- Нажмите клавишу <Delete>.
Точно так же удалите со страницы текстовое поле «Подчиняется» (ReportsTo). Чтобы добавить на страницу элемент управления раскрывающийся список «Обращение»:
- На панели инструментов Панель элементов нажмите кнопку Раскрывающийся список (Dropdown List).
- Выберите на странице доступа к данным свободное место для размещения нового элемента управления, щелкните там левой кнопкой мыши и, не отпуская ее, растяните прямоугольный контур будущих очертаний элемента до желаемых размеров.
- Появится диалоговое окно Создание полей со списком (Combo Box Wizard), предлагающее выбрать вариант заполнения списка данными: из таблицы или запроса либо фиксированным набором значений. В нашем примере нужно выбрать переключатель Будет введен фиксированный набор значений (I will type in the values that I want). Нажмите кнопку Далее (Next).
- Откроется еще одно диалоговое окно Мастера создания списков. Введите список значений и нажмите кнопку Далее (Next).
- В следующем диалоговом окне, требуется выбрать столбец, значения которого будут привязаны к значению списка. Выберите первый столбец Столбец1 (Coll) и нажмите кнопку Далее (Next).
- Появится последнее диалоговое окно мастера. Введите в текстовое поле строку Обращение: для создания надписи, которая будет отображаться рядом с полем со списком, и нажмите кнопку Готово (Finish).
Замечание
Аналогичным образом нужно добавить на страницу список Подчиняется, только в качестве источника элементов списка необходимо указать запрос. Запрос создайте из инструкции SQL в поле подстановки таблицы «Сотрудники» (Employees) и сохраните его в базе данных, например с именем «Подчинение». Есть ограничение: в источнике элементов списка на странице должно быть не более двух столбцов. Процедура добавления списков на основе данных из таблиц/запросов аналогична описанной процедуре. Добавив на страницу элемент управления список или раскрывающийся список, нужно в первом окне Мастера создания списка выбрать вариант заполнения списка из таблицы или запроса и на следующем шаге указать имя этого источника данных. Созданные списки необходимо привязать к соответствующим полям в источнике данных станицы, чтобы в списках отображалось значение для текущей записи. Сделать это можно в окне свойств элемента.
На странице появится изображение поля со списком и надписью около него. Если вас не устраивает расположение элемента управления, выделите его, затем подведите указатель мыши к его контуру, так, чтобы указатель мыши принял форму крестика с четырьмя стрелками на концах или изображения руки, и, удерживая нажатой левую кнопку мыши, переместите элемент управления в нужное место на странице.
Изменить размеры элемента управления можно, растянув с помощью кнопки мыши маркеры изменения размеров, отображающиеся в виде маленьких белых квадратиков по периметру выделенного элемента управления.
Если при перемещении элемента вы случайно закрыли один элемент другим, можно поместить верхний элемент на задний план, чтобы отобразить заслоненный элемент:
- Выделите элемент управления, щелкнув по нему.
- Выберите команду Формат, На задний план (Format, Send to Back).
Мы уже говорили, что у страницы «Личная карточка» не хватает возможности для перехода по записям в источнике данных, чтобы иметь возможность просмотра и правки личных карточек всех сотрудников. В Access 2010 есть возможность добавления на страницу доступа к данным специального элемента управления — кнопки перехода, включающего не только специальные кнопки для перехода по записям, но и кнопки для сортировки и фильтрации записей, а также кнопки сохранения и отмены изменений для текущей записи, добавления и удаления записи. Чтобы добавить этот элемент управления, воспользуйтесь кнопкой Кнопки перехода (Record Navigation) на панели инструментов Панель элементов (Toolbox). Размещение и изменение размеров этого элемента управления выполняется так же, как и для других элементов управления.
Итак, теперь наша страница несколько преобразилась и с ее помощью теперь можно добавлять новые записи. Для этого откройте страницу в режиме Просмотра, нажмите кнопку Новый (New) на панели Кнопки перехода, затем заполните поля и нажмите кнопку Сохранить (Save) на этой же панели (рис. 12.31).
Если вашей странице не нужны все кнопки, изображенные на панели кнопок перехода, вы можете создать собственные элементы управления, с помощью которых будут выполняться необходимые действия. Эти действия придется запрограммировать и назначить их в качестве обработчиков событий элементов. Например, в базе данных «Борей» (Northwind) на странице «Сотрудники» (Employees) для перехода по записям используются текстовые надписи, щелчок по которым вызывает необходимое деиствне. Если в качестве таких элементов использовать кнопки, то для их создания можно обойтись без программирования. Необходимую процедуру создаст мастер:
- Откройте страницу в режиме Конструктора.
- Нажмите кнопку Кнопка (Command Button) на панели инструментов Панель элементов (Toolbox).
- На свободном участке страницы доступа к данным щелкните кнопкой мыши и, не отпуская кнопки, растяните контур кнопки до желаемых размеров.
- Отпустите кнопку мыши. Появится диалоговое окно Мастера создания кнопок.
- В списке категорий выделите элемент Обработка записей (Record Operations), а в списке действий — необходимое действие, например элемент Сохранить запись (Save Record), чтобы создать кнопку для сохранения измененной записи. Нажмите кнопку Далее (Next).
- Чтобы отобразить на кнопке не рисунок, а текстовую надпись, выберите переключатель Текст (Text) и введите текст: Сохранить. Нажмите кнопку Далее.
- На последнем шаге мастера требуется указать имя кнопки для ссылки на нее. Введите имя Сохранить. Нажмите кнопку Готово(Finish).
Таким образом, на странице появится работающая кнопка Сохранить. Сортировка и группировка данных
На страницах доступа к данным возможна группировка записей, как и в отчетах Access. Группы объединяют данные в наборы. Например, записи заказов на странице доступа к данным могут быть сгруппированы по странам. Название каждой страны — это заголовок группы. В зависимости от того, как разработана страница, на ней либо отображаются все группы (обычно со скрытием входящих в них записей), либо ни одна конкретная группа не отображается до тех пор, пока не будет выбрана в списке доступных групп. Если на странице отображаются все группы, то можно отобразить все записи конкретной группы, щелкнув маркер ее развертывания. В нижней части каждой развернутой группы может находиться собственная панель перехода по записям. Редактировать данные на уровне группировки, имеющем поле группировки, невозможно.
Замечание
В страницах доступа к данным, как и в формах и отчетах, можно также фильтровать данные и создавать вычисляемые поля. Все это выполняется аналогично тому, как было описано в главах о формах и отчетах. Поэтому в данной главе мы не будем подробно рассматривать эти вопросы. При необходимости обратитесь к справке Access 2010.
В режиме Конструктора можно задать необходимую группировку записей. Чтобы добавить уровень группировки, выделите элемент, к которому привязан источник данных (это может быть поле, связанный текст или другой элемент управления), и нажмите кнопку Повысить уровень (Promote) на панели инструментов Макет страницы (Page Design). В результате мы сгруппировали все данные из источника по значению этого элемента. Назовем его элементом группировки. Чтобы сгруппировать данные не по одному полю, а по всем полям из таблицы, которая его содержит, нажмите кнопку Группировать по таблицам (Group by Table). Чтобы убрать группировку или соединить два раздела группировки в один, выделите элемент группировки (поле или какой-либо другой элемент) и нажмите кнопку Понизить уровень (Demote).
На панели инструментов Панель элементов (Toolbox) присутствует кнопка Развернуть (Expand), позволяющая добавить на страницу элемент управления в виде кнопки с изображением плюса или минуса, который называется маркером развертывания/свертывания группы. С помощью этого элемента можно развернуть или свернуть список элементов одной группы.
При добавлении на страницу нового уровня группировки появляется новый раздел, который называется заголовком группы. Автоматически туда помещаются элемент группировки и маркер развертывания. Выделить этот раздел можно щелчком мыши по его заголовку. Выделив раздел, можно изменить его размеры с помощью мыши или настроить свойства группы. Открыть окно свойств уровня группы можно, щелкнув по заголовку группы правой кнопкой и выбрав в контекстном меню команду Свойства уровня группы (Group Level Properties). В этом же контекстном меню отображаются команды, позволяющие отобразить или скрыть тот или иной раздел группы. Если снять флажок Верхний колонтитул (Header), будут удалены основной раздел (заголовок группы) и все связанные с ним разделы.
Рассмотрим изменение свойств группировки на примере страницы «Продажи по сотрудникам и странам», описанной . Прежде всего исправим недостатки, полученные вследствие ее автоматического создания (проведенного в целях демонстрации):
- Удалите со страницы имеющиеся уровни группировки.
- В целях повышения быстродействия страницы удалите все текстовые поля и добавьте вместо них элементы типа Связанный текст (Bound Span) с помощью соответствующей кнопки на панели инструментов Панель элементов.
- Отредактируйте надписи новых элементов.
- Привяжите к этим элементам необходимые поля из источника данных, открыв окно свойств и задав значение свойства ControlSource (Источник данных), щелкнув по соответствующему полю в окне свойств (см, следующий раздел) и выбрав в раскрывающемся списке доступных полей необходимое.
- Сгруппируйте записи по названиям стран, а затем по фамилиям сотрудников, добавив два таких уровня группировки с помощью кнопки Повысить уровень.
Чтобы настроить параметры групп:
- Откройте окно свойств уровня группы .
- В появившемся окне свойств отображаются значения свойств выделенного уровня группировки. Задайте свойства каждого из уровней группировки страницы в соответствии с .
- Закройте окно свойств уровня группы.
- Перенесите надписи с подписями к полям в раздел подписей. Расположите надписи в одну линию в разделе подписей, а поля — в одну линию в разделе заголовка группы так, чтобы каждое поле находилось под своей подписью.
- Уменьшите высоту разделов подписей и данных.
Параметры разделов группировки страницы «Продажи по сотрудникам и странам»
Свойство\ Группа | Страна | Сотрудники | Данные | ||
CaptionSection (Раздел | Ложь (False) | Ложь (False) | Истина (True) | ||
подписей) | |||||
GroupHeader (Заголовок | Истина | Истина | Истина | ||
группы) | |||||
GroupFooter (Примечание группы) | Ложь | Ложь | Ложь | ||
RecordNavigationSection | Истина | Истина | Истина | ||
(Раздел кнопок перехода) | |||||
ExpandedByDefault | Истина | Истина | Ложь | ||
(Развернуто по умолчанию) | |||||
DataPageSize (Размер | 1 | 5 | 5 | ||
страницы доступа) | |||||
GroupOn (Группировка) | По полному значению (dscEachValue) |
По полному значению (dscEachValue) |
|||
Grouplnterval (Интервал) | 1 | 1 | |||
DefaultSort (Сортировка по умолчанию) | [<имя элемента группировки>] | [<имя элемента группировки>] | [ДатаИсполнения] АЭС, [Промежуточная Сумма] DESC | ||
Выполнив эти действия, в качестве завершающего штриха мы применили к странице тему Закругление (Radial) для ее оформления. То, что у нас получилось, представлено на [ К сожалению, на этом рисунке не видно фонового узора, но он присутствует, и обладатели компакт-диска могут в этом убедиться. ] .