Метод EventList.Add (Visio)
Добавляет объект Event , который запускает надстройку при возникновении события. Объект Event добавляется в коллекцию EventList исходного объекта, события которого требуется получить.
Синтаксис
expression. Добавить (EventCode, Action, Target, TargetArgs)
Выражение Переменная, представляющая объект EventList .
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
EventCode | Обязательный | Integer | События для записи. |
Действие | Обязательный | Integer | Выполняемая действие. Должен быть visActCodeRunAddon, членом VisEventCodes в библиотеке типов Visio. |
Target (Целевое значение) | Обязательный | String | Имя надстройки. |
TargetArgs | Обязательный | String | Строка, передаваемая объекту Event для задания свойства TargetArgs . |
Возвращаемое значение
Событие
Замечания
Исходный объект , коллекция EventList которого содержит объект Event , устанавливает область, в которой передаются события. События передаются для исходного объекта и объектов ниже в иерархии объектной модели. Например, чтобы запустить надстройку при открытии определенного документа, добавьте объект Event для события DocumentOpened в коллекцию EventList этого документа. Чтобы запустить надстройку при открытии любого документа в экземпляре приложения, добавьте объект Event в коллекцию EventList объекта Application .
Создание объектов event — это распространенный способ обработки событий из C++ или других решений Visual Basic, отличных от Microsoft. При использовании ключевого слова Visual Basic WithEvents для обработки событий все события в событии исходного объекта загорелись, но при создании объектов Event программа будет получать уведомления только о выбранных событиях. В зависимости от решения это может привести к повышению производительности.
Объекты событий , запускающие надстройки, могут быть постоянными: то есть они могут храниться в документе Visio. Чтобы быть постоянными, свойства Persistent и Persistable объекта Event должны иметь значение True.
Аргументы, передаваемые методу Add, задают начальные значения свойств Event объекта Event, Action (visActCodeRunAddon), Target и TargetArgs.
Коды событий объявляются библиотекой типов Visio и имеют префикс visEvt. Коды событий часто представляют собой сочетание констант. Например, visEvtAdd + visEvtDoc — это код события DocumentAdded . Сведения о том, как найти код события, которое требуется создать, см. в разделе Коды событий.
Сведения о создании объекта Event , который сообщает объекту приемника вызывающего объекта о событии, см. в статье Метод AddAdvise .
Пример
В следующем примере показано, как добавить объект Event , запускающий надстройку, в коллекцию EventList исходного объекта, в данном случае объект Document , события которого требуется получать.
Перед выполнением этого макроса заменитеимя файлапути \ допустимым путем и именем файла для исполняемой надстройки (EXE) в проекте Visio. Надстройка не должна принимать аргументов.
Public Sub AddEvent_Example()
Dim vsoAddons As Visio.Addons
Dim vsoEventList As Visio.EventList
Dim vsoDocument As Visio.Document
Dim vsoEvent As Visio.Event
Dim vsoAddon As Visio.Addon
'Add a document based on the Basic Diagram template.
Set vsoDocument = Documents.Add("Basic Diagram.vst")
'Add an add-on to the Addons collection.
Set vsoAddons = Visio.Addons
Set vsoAddon = vsoAddons.Add("path \filename ")
'Add a BeforeDeleteSelection event to the EventList collection
'of the Document object. The event will start your add-on,
'which takes no arguments.
Set vsoEventList = vsoDocument.EventList
Set vsoEvent = vsoEventList.Add(visEvtCodeBefSelDel, _
visActCodeRunAddon, _
"path \filename ", "")
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.