А.Ю. Гончаров Access 2003 (960524), страница 26
Текст из файла (страница 26)
В данном случае будут отбиратьсязаписи с точным совпадением значения параметра и поля.Введите значение параметраГ?Назван не должностиДиректор\ОК[ОтменаРис. 6.17. Окно для ввода параметраЕсли в таблице есть поля с числовыми данными, то можно задавать и математические критерии отбора. Допустим, мы работаем с таблицей Товары и намнадо показать только те записи из таблицы, для которых значение поля НаСкладебольше нуля. Иначе говоря, показать только те товары, которые имеются на данный момент.
Для этого необходимо выполнить следующую последовательностьдействий.1.2.3.Раскрыть окно построителя запросов для списка, как и в предыдущем примере.В пустом столбце бланка в строке «Поле» выбрать из списка имя НаСкладе.В той же графе в строке «Условие отбора» ввести условие: >0.Для такого запроса инструкция SQL (с отбором трех полей и сортировкой пополю Марка) будет следующая:SELECT Товары,КодТовара, Товары.Марка, Товары.НаСкладе FROM Товары WHERE(((Товары.НаСкладе)>0)) ORDER BY Т о в а р ы . М а р к а ;Разумеется, ее можно напечатать прямо в строке Источник строк окнасвойств списка. Несмотря на то что в запрос добавлено еще одно поле, в спискеоно видно не будет.Формы145Если уже готовый список требуется доработать - создать в нем еще одно поле, то нам потребуется:1.2.Раскрыть окно свойств списка, выбрать вкладку Макет.В строке Число столбцов указать величину на единицу большую, чем была.В строке Ширина столбцов указать ширину нового столбца, например:С е к ; 2 , 5 4 4 с м ; 2 , 5 4 4 с м ; 2, 544см.Рамки объектовЕсли в форму надо вставить графический объект, для него создается элементуправления, называемый рамкой.
Существует несколько разновидностей рамок.На панели инструментов Панель элементов есть три кнопки для создания рамок.Кнопка Рисунок предназначена для размещения в форме изображения из графического файла. Как только пользователь очертит мышью контур области рисунка в форме, программа откроет диалог для связывания рамки с графическимфайлом. После выбора файла рисунок будет вставлен и виден в режиме конструктора.
Пользователь должен установить рамку вокруг1 рисунка с соответствиис размерами последнего.Кнопка Свободная рамка объекта предназначена для внедрения объектовOLE из других приложений. При ее нажатии Access открывает окно диалога длявыбора программы-источника, поддерживающей протокол OLE. Можно дажесоздать объект прямо в режиме конструктора. Например, если во время работымастера при определении типа объекта выбрать «Bitmap Image)- (рис. 6.13), топосле создания объекта будет подключено окно графического редактораMS Paint, и с помощью его инструментов можно будет создать рисунок (или использовать готовый). Можно также выбрать опцию «Документ Microsoft Word»,и тогда графический объект (с текстом) можно создать средствами текстовогоредактора. Единственный недостаток такого объекта: он не может прокручиваться и должен быть показан в рамке целиком.Кнопка Присоединенная рамка объекта предназначена для внедрении объектов OLE, хранящихся в базе данных, например рисунков в таблицах.
В этомслучае пользователь сам определяет источник данных.Глава 6146Microsoft Office AccessТип объекта;0CosAfffb новыйО Создать tp файлаACDSee BMP ImageflCDSee DIB [mageДСОЗее P5P linage^p ImageО т м е н а ]|П i виде значкаMedia CipMIDI SequencePackageДобавление в документ нового объекта типа 'Bitmap Image'.Рис.
6.18. Окно для выбора типа объектаNBРазмеры рисунка и рамки не согласуются по умолчанию. Разработчикдолжен сам подобрать их в режиме конструктора. Если рисунокбольше, чем рамка, то он усекается. Это соответствует опции«Фрагмент» свойства рамки Установка размеров Два других варианта позволяют выбирать способы автоматического согласования размеров рисунка ирамки: «Вписать в рамку» и «По размеру рамки».
Обаэти варианта предполагают масштабирование рисунка, а не изменение размеров рамки. При масштабировании качество рисунка, какправило, ухудшается.КнопкиКнопки довольно часто приходится использовать в форме. При созданиикнопки в режиме конструктора надо обрисовать ее контур и задать надпись наней, Кроме того, кнопку можно сделать с графическим изображением (с помощью свойства Рисунок). Рисунок можно взять из файла или воспользоватьсявстроенной коллекцией значков, состоящей из нескольких десятков изображений.Мне особенно нравится рисунок дискеты 5,25 дюйма.Кнопка сама по себе работать, не будет, для нее обязательно надо определитьпроцедуру, которая будет выполняться при ее нажатии. Эту процедуру надо связать с событием Нажатие кнопки (Click) с помощью окна свойств.Например, кнопка для открытия другой формы (с именем Форма!) должнаиметь такую процедуру обработки события:Private Sub Кнопка1_СПс1<()DoCmd.OpenForm "Формат"End SubФормы147Если кнопка создается для пересчета данных в форме (что бывает необходимо,если в форме есть вычисляемые поля), то программа должна быть такой:Private Sub KHoriKa1_Click()Me.RefreshEnd SubОбъект Me означает текущую форму, поэтому такая процедура годится длялюбой формы.В форму можно, например, включить кнопку, которая запустит встроенныйкалькулятор.
В коммерческих базах данных это особенно актуально. Тогда процедура будет такая:Private Sub Кнопка1_СПс1<()On Error Goto Err_KHoriKa1_ClickDim stAppName As StringstAppName = "Calc.exe"Call ShelKstAppName. 1)Exit_KHonKa1_Click:Exit SubErr_KHom<a1_Click:MsgBox Err.DescriptionResume Exit_KHonKa1_ClickEnd SubМожно сделать кнопку и без программирования.
Есть набор стандартных кнопок, который доступен в мастере кнопок,Мастер кнопокДо сих пор мы создавали кнопки, самостоятельно определяя их свойства, нодля их разработки можно использовать мастер (на панели инструментов Панельэлементов должна быть нажата кнопка Мастера). Начало процесса созданиякнопки такое же, как и в предыдущих случаях. - надо использовать инструментКнопка в режиме конструктора формы (или отчета) и обрисовать мышью контурбудущей кнопки.
Затем в дело вступает мастер кнопок.Он содержит фиксированный набор готовых инструментов, и на его первомшаге надо выбрать подходящий. Все они разбиты на категории. Названия кнопокприведены ниже.Категория "Переходы по записям»:Найти далее;148Глава 6Первая запись;Поиск записи;Последняя запись;Предыдущая запись;Следующая запись.Категория «Обработка записей»;Восстановить запись;Добавить запись;Дублировать запись;Печать записи;Сохранить запись;Удалить запись.Категория «Работа с формой":Закрыть форму;Изменить фильтр формы;Обновить данные формы;Открыть страницу;Открыть форму;Печать текущей формы;Печать формы;Применить фильтр формы.Категория "Работа с отчетом^:Отправить отчет в файл;Отправить отчет по почте;Печать отчета;Просмотр отчета.Категория "Приложение»:Выйти из приложения;Выполнить приложение;Запустить MS Excel;Запустить MS Word.Категория «Разное»:Автонабор номера;Выполнить запрос;Выполнить макрос;Печать таблицы.Формы149Выберем для примера кнопку Выйти из приложения.
На втором шаге мастераможно выбрать изображение на кнопке. Это может быть произвольный текст илирисунок. Мастер предлагает набор стандартных рисунков, но разработчик можетвыбрать графический файл, нажав кнопку Обзор. На третьем шаге мастера надоопределить имя кнопки. Имя кнопки представляет собой переменную, и его не надопутать с подписью - текстом, изображенным на кнопке. На этом работа мастеракнопок заканчивается. На рис. 6.19 показан пример формы с заготовкой обычнойкнопки и с кнопкой выхода из программы. Кнопки, созданные с помощью мастера,обеспечивают весьма быструю реакцию программы - использовать их удобнее, чемкоманды меню.Рис.
6.19. Кнопки в формеГруппа переключателейВ некоторых случаях необходимо создавать группу элементов управления.Группа имеет свою рамку и подпись. Например, если надо создать группу переключателей, выполните следующие действия:1.2.Откройте форму в режиме конструктора.Нажмите кнопку Группа переключателей на панели инструментов Панельэлементов.
Нарисуйте мышью прямоугольник, в пределах которого должнынаходиться будущие переключатели. Предусмотрите место и для подписейк ним.3. Ответьте на вопросы мастера групп.Первый шаг мастера групп показан на рис. 6.20. Здесь надо задать подписи будущих переключателей. Для примера можно сделать три переключателя.Глава 6150нданме группы переключателейГруппа переключателей содержит набор кнопок,флажков или выключателей. Выберите един «5вариантов,Задайте подпись для каждого переключателя:Подписи;Первая подписьВторая подпись"71 Третья подписьРис. 6.20; Первый шаг мастера группВторой шаг мастера показан на рис. 6.21.