Программирование >>  Проектирование интерфейса пользователя 

1 ... 133 134 135 [ 136 ] 137 138 139 ... 153


Необходимо установить файл анимации acs, который не

навливается по умолчанию вместе с Accesss.

уста-

Строка 2 листинга .1 содержит объявление константы с наименованием файла Помощника Office, в строке 3 определяется переменная Outlook типа Object, которой далее присваивается экземпляр Outlook. Подобный стиль создания объектов носит название динамического связывания - объект ассоциируется с переменной в процессе выполнения программы. Альтернативный способ - статическое связывание - предполагает предварительное объявление переменной заведомо известного типа. Чтобы получить возможность статического связывания объектов Outlook, в диалоговом окне References необходимо установить флажок Microsoft Outlook 10.0 Object Library. В случае статического связывания строка 4 листинга 1 должны быть заменены следующим выражением: Dim Outlook As New Outlook. Application

Способ динамического связывания более гибок - он позволяет присваивать переменной типа Object объект любого класса. При статическом связывании методы и свойства объектов класса доступны уже на этапе проектирования программы. Поскольку в этом случае тип заранее известен, редактор Visual Basic по мере набора текста открывает контекстные меню, в которых находятся, в атрибуты интересующего вас класса.

Строка 5 содержит инструкцию задания имени файла Помощника, далее фигурка последнего изображается на экране, а команда строки 7 заставляет Помощника выйти

на бис .

Использование объекта NameSpace

Сейчас вы уже знаете, как создать экземпляр Outlook. Доступ к ранее созданному объекту можно получить, воспользовавшись функцией Getobject.) Далее необходимо

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

Все объекты Outlook, располагающие информацией о размещении данных, подчинены абстрактному корневому объекту NameSpace. Для доступа ко всем разновидностям данных Outlook необходимо использовать вызов ( возвращающий объект класса NameSpace. Обладая объектом NameSpace, вы сможете добраться до источников данных (скажем, информации о контактах) с помощью коллекции Folders. Листинг 24.2 демонстрирует пример построения объекта NameSpace.

Листинг 24.2. Пример построения объекта NameSpace

1: Su meSpace ( ) -

2 : Dim N As NameSpace 3: Set N = GetNameSpace(

4: End Sub

MAPI )

В строках 1-4 листинга 24.2 переменная класса NameSpace объявляется, Il а затем инициализируется соответствующим объектом MAPI (Mail API). Допускается существование только одного объекта NameSpace MAPl в пределах текущего сеанса Access. Наименование функции и факт использования в ней текстового аргумента дают основание предположить, что



в будущем Microsoft, вероятно, предоставит средства создания объектов NameSpace и других разновидностей. Планируя обратиться к данным Outlook, используйте конструкцию вызова, приведенную выше.

Построив объект NameSpace, вы получаете возможность обращения к данным

Outlook с помощью коллекции Folders. Об этом - далее.

Использование коллекции Folders

В составе объекта NameSpace MAPI содержится коллекция Folders объектов класса Каждый элемент списка папок, отображаемого в окне приложе-

ния Microsoft Outloolf (рис. 24.1), представляется отдельным объектом MAPlFolder.

Чтобы получить доступ к содержимому любой из папок, необходимо обратиться к соответствующему объекту коллекции. Табл. 24.1 приводит список предопределеннгх

констант, обозначающих различные объекты MAPlFolder.

Outl<ltir


ОтяраитыЬолуакп. ils-HaS : Ш

puioak вагодмя

.................................1 r:B[Eii]i£№*<<*!>!!D

ф Задачи

ф Контакты Отгравяе ые g Упшмтые (2) <$i Черкоанка (1)

Другие 4iw4 .


Рис. 24. Прикладная программа способна получить доступ к содержимому стандартных папок Outlook

Таблица пр1деленные константы для обозначения объектов MAPlFolder

Константа

Название лапки и описание объекта

olfolderCalendar olFolderContacts

Календарь; коллекция items содержит объекты Appointmentitem Контакты; коллекция items содержит объекты Contactitem olFolderDeletedltem Удаленные; коллекция items содержит объекты Mailltem

olFolderDrafts olFolderInbox olFolderJournal

Черновики; коллекция items содержит объекты Mailltem Входящие; коллекция Items содержит объекты Mailltem Дневник; коллекция items содержит объекты Journalitem



Окончание табл. 24.1

Константа

Название папки и описание объекта

olFolderNotes olFolderOutbox

Заметки; коллекция Items содержит объекты Note item Исходящие; коллекция items содержит объекты Mai litem

olFolderSentMail olFolderTasks

Отправленные; коллекция items содержит объекты Mailitem Задачи; коллекция items содержит объекты Taskltem

Подробности, касающиеся объектов MAPlFolder каждого из указанных в таблице

видов, вы сможете найти в оперативной справочной системе Outlook.

Объект MAPlFolder содержит коллекцию ltems. Вы уже знаете, что такое коллекции и как с ним тать. Тип элементов коллекции (см. табл. 24.1) зависит от разновидности объекта MAPlFolder. Маленький пример: в результате вызова GetDefault-Folder (olFolderContacts) будет возвращен объект MAPlFolder, который содержит информацию о контактах. Эта информация оформлена в виде коллекции, каждый элемент которой представляет собой объект класса Contactltem. Листинг 24.3 демонстрирует способ получения одного из элементов коллекции в объекте MAPlFolder, который ссылается на предлагаемую по умолчанию папку с данными о контактах.

Листинг 24.3. Пример получения информации о контактах

8 : 9:

Sub PrintOneContact( )

Dim Outlook As New Outlook.Application Dim NameSpace As NameSpace

Set NameSpace = Outlook.GetNameSpace( M№1 )

Dim Folder As MAPlFolder

Set Folder = NameSpace.GetDefaultFolder(olFolderContacts)

Dim Contact As Contactltem

Set Contact = Folder.Items( Lori Kimmel )

Debug.Print Contact.FullName

10:End Sub

В строке 2 листинга 24.3 посредством статической привязки создается экземпляр Outlook. Строка 3 содержит объявление переменной типа NameSpace, которая инициализируется в строке 4. В строке 5 объявляется переменная Folder типа MAPlFolder; в строке 6 ей присваивается значение объекта MAPlFolder, который ссылается на папку с информацией о контактах. Строка 7 содержит выражение объявления переменной Contact типа Contactltem. В строке 8 выполняется поиск элемента коллекции, в свойстве FullName которого хранится значение Lori Kimmel , и присвоение этого элемента переменной Contact. В качестве индекса вместо строки допускается задавать целочисленное выражение, значение которого не превышает величину, хранящуюся в Items.Count. Команда строки 9 отображает значение свойства ЫName выбранного объекта-элемента коллекции в окне lmmediate. Более лаконичный вариант той же процедуры приведен в листинге 24.4.

Листинг 24.4. Сокращенный вариант процедуры листинга 24.3

1: Sub BriefPrintOneContact ( )

2: Dim Outlook As New Outlook.Application



1 ... 133 134 135 [ 136 ] 137 138 139 ... 153

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика