русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Ссылки на объекты


Дата добавления: 2014-05-17; просмотров: 1634; Нарушение авторских прав


Для обращения к объекту существует одно общее правило: нужно проследить путь в иерархии объектов, начиная с объектов самого верхнего уровня. Главным в иерархии объектов является объект Application. Он содержит ссылки на все остальные объекты и семейства объектов Microsoft Office (предоставляет к ним доступ). Объект Application представляет активное приложение Microsoft Access и содержит все методы и свойства, которые можно применять к активному приложению. Например, если нужно обратиться к форме, входящей в семейства Forms и имеющей название “Сотрудники”, следует написать следующее выражение:

Application.CurrentProject.Forms (“Сотрудники”)

Это выражение представляет собой ссылку на объект – форму «Сотрудники». Вместо этого выражения можно написать сокращенно:

Application.Forms (“Сотрудники”) или Forms! Сотрудники

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

Forms! Сотрудники![Код сотрудника]

Здесь используются квадратные скобки, так как имя элемента управления имеет пробел.

Если форма Сотрудники открыта и является текущей, то ссылка на элемент управления [Код сотрудника] запишется так: Me![Код сотрудника]

2.8. Свойства и методы объектов

Каждый объект имеет свойства, которые являются его характеристиками, и методы, позволяющие управлять поведением этого объекта. Например, чтобы установить Свойство Value (Значение) элемента управления Цена формы Товары нужно записать:

Forms!Товары!Цена.Value = 345,25

Чтобы получить свойство, можно записать

S=Forms!Цена

Здесь переменной S присваивается значение свойства Value семейства Forms (Value при записи программы можно опускать).

Метод в VBA обозначается так же, как и свойство. Однако в отличие от свойств, методы могут иметь аргументы. Например, в следующем коде VBA применяется метод OpenForm объекта DoCmd :



DoCmd.OpenForm “Сотрудники”, acForm

Объект DoCmd – это специальный объект, который позволяет в программах VBA выполнять макрокоманды. Имя каждой макрокоманды является методом этого объекта.

2.9. Применение метода DoCmdв программах VBA

VBA позволяет создавать процедуры, состоящих из одних макрокоманд. Прямые эквиваленты существуют только для некоторых из них. Для выполнения макрокоманд используется методDoCmd.Структура метода:

DoCmd.макрокоманда [аргумент],…

К макрокомандам, которые выполняются из среды VBA, относятся такие: ApplyFilter (Применит фильтр), Close (Закрыть), FindNext (Следующая запись), FindRecord (НайтиЗапись), HourGlass (Песочные часы), Maximize (Развернуть), Minimize (Свернуть), OpenForm (Открыть Форму), OpenQuery (Открыть Запрос), OpenReport (ОткрытьОтчет), ShowToolBar (ПанельИнструментов).

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

Открытие формы.Для открытия формы используется макрокоманда OpenForm. Структура метода DoCmd при этом такова:

DoCmd.OpenForm FormName, View, FilterName, WhereCondition, DataMode, WindowMode, OpenArgs

FormNameимя формы из текущей базы данных, которую нужно открыть.

Viewопределяет тип открытия формы. Используется одна из следующих констант: AcNormal – открывает форму в виде Форма (по умолчанию); AcDesign - открывает форму в виде Конструктор; AcFormDs – открывает форму в виде Таблица данных.

FilterName – имя запроса из текущей базы данных.

WhereCondition – SQL-выражение (слово WHERE опускается), определяющее записи, которые следует вывести на экран (например, “Страна = ‘Россия' “).

DataMode – определяет режим ввода данных, в котором открыта данная форма, на основании следующих констант: AcAdd – открывает форму в режиме Добавление (можно вносить новые записи, но нельзя редактировать имеющиеся); AcEdit – открывает форму в режиме Редактирования (можно вносить новые записи и редактировать имеющиеся); AcReadOnly – открывает форму в режиме Только просмотр ( ввод и редактирование записей невозможно).

WindowMode – определяет режим окна, в котором выводится форма. Используются константные значения: AcNormal – открывает форму в виде Обычный. Используется по умолчанию; AcHidden – открывает форму в скрытом виде; AcIcon – открывает форму в виде свернутой пиктограммы.

OpenArgs– строковое выражение, определяющее один или несколько аргументов. Эти аргументы могут использоваться в программе, написанной на VBA, в качестве модификаторов открытия формы.

Пример 1. Записать процедуру-функцию для открытия формы “Продажи” и вывести записи, удовлетворяющие следующим условиям: “Заказано” - больше 18, “Дата заказа” – 2005г., Форму открыть в виде Форма. Режим ввода данных – Редактирование.

Public Function Форма1()

DoCmd.OpenForm _

FormName:=”Продажи”, _

Wherecondition:=”Заказано> 18 and year(Дата_Заказа) =2005”, _

view:=acNormal, _

datamode:=acEdit

End Function

Пример 2. Имеется форма “Выбор студента” с полем со списком, где даны города (рис.2.1). Имеется форма "Студенты”, где даны города и фамилии студентов (рис.2.2.) В форме “Выбор студента” имеется кнопка “Выбор студента по городу”.В поле со списком выбирается город, и, нажав на кнопку, выбираются только те студенты, кто живет в данном городе. Ниже приведена простейшая процедура для кнопки.

Private Sub Кнопка3_Click()

DoCmd.OpenForm "Студенты", _

wherecondition:= "[Города]=[Forms]![Выбор студента]![Города]"

End Sub

Рис.2.1. Форма “Выбор студента”

Рис. 2.2. Форма “Студенты”

 

Закрытие формы.Для закрытия формы используется макрокоманда Close. Cтруктура метода DoCmd при этом такова:

DoCmd.Close ObjectType, ObjectName, Save

ObjectType – тип закрываемого объекта. Для закрытия формы используется аргумент acForm. К прочим аргументам относятся acTable, acQuery, acReport, acMacro, acModule. Если этот аргумент упущен, то производится закрытие активного объекта.

ObjectName – имя объекта, который необходимо закрыть.

Save – константа, определяющая процедуру закрытия объекта, в котором содержатся не сохраненные данные: (предлагает пользователю сохранить внесенные изменения; используется по умолчанию), acSaveYes (автоматическое сохранение внесенных изменений), acSaveNo (не сохранять внесенных изменений).

Пример 3. Записать процедуру - подпрограмму для закрытия формы ”Продажи” с автоматическим сохранением внесенных изменений.

Public Sub Закрыть ()

DoCmd.Close acForm, “Продажи”, acSaveYes

End Sub

Примечание. Для закрытия активного объекта достаточно в программе написать:

DoCmd.Close

Фильтрация данных в форме

Для фильтрации данных формы используется макрокоманда ApplyFilter. Cтруктура метода DoCmd при этом такова:

DoCmd.ApplyFilter “ Имя фильтра”,”Условие отбора”

Имя фильтра – имя запроса;

Условие отбора – выражение SQL без Where.

Пример 4.В форме “Отдел кадров” (рис. 2.3) процедура Subдля фильтрации данных по “Дата_зачисл” такова:

Sub Фильтрация_по_дате()

DoCmd.ApplyFilter "", "[Дата_зачисл]>[Введите дату]"

End Sub

При запуске программы в окне диалога выводится приглашение на вводдаты.

Рис.2.3. Форма “Отдел кадров”



<== предыдущая лекция | следующая лекция ==>
Модели объектов доступа к данным DAO и ADO | Присваивание значения объектной переменной


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.035 сек.