Файл: Освой самостоятельно программирование для MS Access 2002 за 24 часа [П.Киммел].pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 21.10.2020
Просмотров: 7872
Скачиваний: 25

Диалоговое окно Построитель выражений (Expression Builder) позволяет задавать
как простые критерии фильтрации (один из них показан на рис. 19.12 и предполагает
отбор записей, удовлетворяющих условию
=
так и более
сложные — такие, которые предусматривают обращение к подзапросам, полям,
функциям и т.п. (Собственно, выражения, подобные приведенному выше, легко вве-
сти непосредственно в окне задания расширенного фильтра.)
т
ЕЁ FOOTS
СЁ
О Операторы
О
выражения
Рис.
Диалоговое окно Построитель выражений
Окно позволяет вводить условия отбора с клавиатуры либо использовать диалого-
вые средства — кнопки и списки. Возможные источники данных, на которые позво-
лено ссылаться при построении условий фильтрации, таковы: Таблицы, Запросы,
Формы, Отчеты, Функции, Константы, Операторы, Общие выражения — т.е. практиче-
ски все объекты базы данных Access.
Настройка параметров формы
В некоторых случаях форму, построенную с помощью мастера, можно использо-
вать сразу, не предпринимая дополнительных шагов. Но чаще требуется расширить ее
функциональность и изменить некоторые свойства. В этом разделе рассказывается о
возможных способах настройки параметров форм.
В главе "21-й час. Основы программирования классов" вы найдете много полезной
информации, касающейся вопросов построения классов. В данный момент вам необ-
ходимо вспомнить, что экземпляры классов называют объектами — мы будем обра-
щаться к этому понятию в ходе дальнейшего изложения.
Если взглянуть на форму, построенную с помощью мастера, то можно заметить,
что она содержит ряд объектов. На форме MUSIC (см. рис. 19.7) присутствуют объекты
трех наиболее употребительных классов — TextBox, Label и, разумеется, Form. Са-
мое существенное различие между ними и объектами, о которых речь шла на про-
шлых занятиях (скажем, Recordset), состоит в наличии Визуальных свойств, т.е. до-
полнительных атрибутов, управляющих характеристиками внешнего вида.
Визуальные объекты обладают атрибутами трех типов, и о каждом из них подробно
рассказывается ниже.
340
Часть VII. Проектирование интерфейса пользователя

Знакомство с атрибутами визуальных
объектов
Класс —
это расширенный пользовательский тип данных (в роли пользователя в дан-
ном случае выступает программист).
Объектом
называется переменная, или экземпляр,
класса. Например, выражение Dim
As New Collection определяет
объект под названием MyCollection, служащий экземпляром класса Collection. Каж-
дый объект некоторого класса хранит собственный набор атрибутов и способен к вы-
полнению тех же функций, что и его родные "братья" — объекты того же класса.
Переменные, объявленные в составе класса, называются свойствами. Словом
свой-
ство
в контексте лексики объектно-ориентированного программирования обознача-
ются
данные, служащие частью класса.
Речь уже шла о том, что объекты являются но-
сителями "знаний" и "умений". "Знания" заключены во множестве свойств, а
"умения" - в наборе реализованных в составе класса методов. В теории и практике
объектно-ориентированного программирования
методами
называют процедуры и
функции, принадлежащие классу.
Термины
свойство
и
метод
для вас не новы — мы неоднократно употребляли их на
прошлых занятиях. К третьей группе атрибутов класса относятся
события.
Событие
предполагает реакцию объекта на процессы, которые с ним происходят. Пользователь
заполняет поле ввода текста или щелкает мышью на кнопке формы — это типичные
примеры событий.
Новый термин
Новый термин
Новый термин
Сообщения
— это блоки данных, которыми операционная система Win-
dows обменивается с каждой из прикладных программ, работающих в ее
среде. Например, щелчок мышью в пределах формы приложения порож-
дает сообщение, пересылаемое этому приложению.
Событие —
это термин, используемый для ссылки на факты приема и пе-
редачи приложением различных сообщений. Например, получение прило-
жением сообщения о щелчке кнопкой мыши трактуется как событие.
Обработчик событий —
это процедура (функция), вызываемая в ответ на
событие.
Когда вы нажимаете клавишу или щелкаете кнопкой мыши, первыми реагируют
аппаратные устройства компьютера. Операционная система Windows преобразует фи-
зический сигнал в определенный блок информации, называемый сообщением. Сфор-
мировав сообщение, Windows определяет, какая из работающих в данный момент
программ должна его получить, и отсылает сообщение по назначению. Блок кода
приложения, принимающий сообщение, называют обработчиком события.
Напомним еще раз, что свойства — это данные, хранимые в составе объектов, ме-
тоды — это функции и
объявленные внутри класса, а обработчики собы-
тий — это процедуры, взаимодействующие с Windows в ответ на получаемые прило-
жением сообщения. Последний атрибут несколько более тонок. С событиями связаны
собственные порции данных и кода. Процедура вообще и обработчик события в част-
ности с точки зрения компьютера — это некоторый адрес, т.е. те же данные. Поэтому
событие в составе объекта можно считать свойством, содержащим адрес процедуры
обработчика.
Если не все понятно, не беспокойтесь. Визуальные объекты нам с вами использо-
вать намного проще, чем их создавать. Надеемся, примеры, предлагаемые далее, по-
могут прояснить ситуацию.
час. Создание экранных форм 341

Свойства объектов
Access 2002 — это инструментальная среда визуального программирования. Иначе
говоря, значительная часть работы по заданию характеристик поведения форм выпол-
няется системой автоматически.
Каждый визуальный объект обладает определенными свойствами. Со свойствами
формы можно ознакомиться, обратившись к средствам диалогового окна Форма
(рис. 19.13), которое открывается командой
'
j
J Другие |
*
сводной
.
Да
Да
,
/Р.
Диалоговое окно свойств
позволяет управлять свойствами формы
Свойства, перечисленные на вкладках диалогового окна Форма, — это данные. В
ходе проектирования формы вы можете легко изменять содержимое тех или иных
свойств, находя наименование свойства в левой половине списка и редактируя его
значение в правой. Чтобы, например, изменить заголовок формы с
MUSIC
на
Music,
выполните следующие действия.
1. Откройте форму MUSIC.
2. Выберите команду
3. Перейдите на вкладку Макет (Format) диалогового окна Форма.
4. Найдите свойство Подпись (Caption) (оно располагается в самом начале списка) и
измените его значение с MUSIC на Music.
Немного попрактиковавшись, вы поймете, что все это довольно просто. Визуаль-
ная среда предоставляет возможности интерактивной работы — не нужно заниматься
кодированием в привычном понимании этого слова. (При необходимости свойства
объекта могут изменяться и с помощью строк кода — динамически, в ходе выполне-
ния программы.)
Свойства, перечисленные в окне Форма, относятся к тому объекту, который находится
в фокусе. Не закрывая окна Форма, щелкните, скажем, на поле ввода текста (фактически,
на объекте типа TextBox) FIRST_NAME формы MUSIC — и окно свойств Форма изменит
свое название (теперь оно будет именоваться Поле: FIRST_NAME), а также содержимое.
Методы
Методы объектов вызываются с указанием наименования объекта, оператора точки
и названия метода. В главе
час. Коллекции данных" речь шла об использо-
вании объектов и их методов. Вспомните, скажем, что метод Add класса Collection
вызывается посредством конструкции
с передачей требуемых аргу-
ментов. (Строка 4 листинга 13.2, например, демонстрирует пример добавления в кол-
лекцию элементов типа String.)
342
Часть VII. Проектирование интерфейса пользователя

Аналогичным образом используются и другие методы классов — указывается имя
объекта, сопровождаемое оператором точки и названием метода. Методы применяют-
ся точно так же, как и обычные
То же справедливо и в отношении мето-
дов визуальных объектов. Каждый объект класса Form, например, имеет в своем со-
ставе метод Repaint, позволяющий обновить изображение окна формы со всем его
содержимым. Имя объекта формы MUSIC —
(оно хранится в свойстве
Name). Для вызова метода Repaint вы могли бы написать:
Метод Repaint не требует задания аргументов. Во многих классах наименования и
назначение методов одинаковы. Чтобы прояснить для себя детали использования
конкретного метода, обращайтесь к материалам оперативной справочной системы.
Программирование обработчиков событий
обработчиков событий сохраняются в модулях, наряду со всем осталь-
ным кодом приложения. Прежде чем приступить к созданию обработчиков событий
для формы, следует установить признак того, что форма может иметь код. (Ранее от-
мечалось, что форма способна выполнять некоторые базовые операции даже при от-
сутствии собственного кода.)
Чтобы получить информацию об определенном свойстве объекта,
откройте диалоговое окно свойств, укажите требуемое свойство и
нажмите клавишу <F1>. Отобразится окно контекстной оперативной
справки, содержащее исчерпывающие данные о свойстве, ссылки на
родственные темы и примеры кода.
Чтобы установить для формы признак наличия кода, выполните следующие действия.
1. Откройте окно формы, выберите в строке меню команду
View), а затем щелкните на темном квадрате в левом верхнем углу
окна формы, чтобы передать фокус объекту формы (рис.
Рис. 19.14. Выберите объект формы в целом, щелкнув
на темном квадрате в левом верхнем углу окна формы
2.
Выберите команду меню
чтобы открыть диалоговое окно свойств
Форма.
3. Перейдите на вкладку Другие (Other).
час. Создание экранных форм
343

4. Найдите в нижней части списка свойств элемент Наличие модуля (Has Module) и
установите для него значение Да (Yes), воспользовавшись раскрывающимся спи-
ском (рис. 19.15).
'
| События
Другие Все
.............. ,
;
До
ч « .
.
модуля
. ..... '
режимы
Да
Рис. 19.15. Прежде чем снабдить форму собственным кодом,
установите для свойства
модуля значение Да
Теперь вы сможете создавать обработчики событий и "привязывать" их к форме.
В свойствах событий формы находят отражение все процедуры обработки, которые
вы создали. Чтобы написать обработчик конкретного события, отыщите название со-
бытия на вкладке События диалогового окна свойств, щелкните на соответствующем
элементе списка, а затем — на кнопке справа от него, помеченной пиктограммой
многоточия. Далее приводится пример динамического изменения заголовка формы.
Выполните следующие действия.
1. Щелкните на форме, чтобы передать ей фокус ввода.
2. Выберите в строке меню команду
с целью открыть диалоговое окно
свойств Форма.
3. Переидите на вкладку События (Event).
4. Щелкните на элементе Загрузка (On Load) списка событий.
5. Щелкните на кнопке Построитель (Build) (с изображением многоточия. Откроется
окно редактора модуля текущей формы.
6. Добавьте в тело обработчика
строку
"Моя му-
зыкальная коллекция". Полный текст примера показан в листинге 19.1.
Листинг
Пример обработчика, динамически изменяющего заголовок формы
Private Sub
)
= "Моя музыкальная коллекция"
3 : End Sub
Совершенно неважно, насколько прост или сложен код, который вы напишете, -
процесс создания обработчиков единый.
Размещение управляющих элементов
на форме
Чтобы разместить на форме новые управляющие элементы, обратитесь к средствам
панели инструментов Панель элементов, которая может быть открыта командой меню
элементов (рис. 19.16).
344
Часть VII. Проектирование интерфейса пользователя