Событие Application.DocumentCreated (Visio)

Происходит после создания документа.

Синтаксис

expression. DocumentCreated (doc)

выражение: переменная, представляющая объект Application.

Параметры

Имя Обязательный или необязательный Тип данных Описание
DOC Обязательный [IVDOCUMENT] Созданный документ.

Замечания

Событие DocumentCreated часто добавляется в коллекцию EventList файла шаблона Microsoft Visio (VST). Действие события активируется при создании нового документа на основе этого шаблона.

Если вы используете Microsoft Visual Basic или Visual Basic для приложений (VBA), синтаксис в этом разделе описывает распространенный и эффективный способ обработки событий.

Если вы хотите создать собственные объекты Event , используйте метод Add или AddAdvise .

Чтобы создать объект Event , запускающий надстройку, используйте метод Add в том виде, в котором он применяется к коллекции EventList .

Чтобы создать объект Event , получающий уведомление, используйте метод AddAdvise .

Чтобы найти код события, которое требуется создать, см. статью Коды событий.

События DocumentCreated можно добавить в коллекцию EventList объекта Application , Documents или Document . Первые два являются простыми; Если документ открывается или создается в области объекта Application или его коллекции Documents , возникает событие DocumentCreated .

Однако добавление события DocumentCreated в коллекцию EventList объекта Document имеет смысл только в том случае, если действие события — visActCodeRunAddon. В этом случае событие сохраняется; он может храниться вместе с документом. Если открыт документ, содержащий постоянное событие, активируется его действие. Если новый документ основан на документе, содержающем постоянное событие, или копируется из нее, событие DocumentCreated копируется в новый документ и активируется его действие. Однако если действие события — visActCodeAdvise, это событие не сохраняется и, следовательно, не сохраняется вместе с документом; Следовательно, он никогда не активируется.

Вы можете запретить выполнение кода в ответ на событие DocumentCreated, DocumentOpened или DocumentAdded , а также запуск всех событий, задав для свойства EventsEnabled объекта Application значение False.

Пример

В этом примере VBA показано, как подсчитать фигуры, добавленные в рисунок, на основе образца с именем Square.

Обработчик событий DocumentCreated запускается при создании нового документа на основе шаблона, содержащего этот код. Обработчик инициализирует целочисленную переменную intNumberOfSquares, которая используется для хранения счетчика.

Обработчик событий ShapeAdded выполняется каждый раз, когда фигура добавляется на страницу документа, независимо от того, перетаскивается ли фигура из набора элементов, рисуется с помощью инструмента рисования или вставлена из буфера обмена. Обработчик проверяет свойство Master новой фигуры и, если фигура основана на главном элементе Square , приращение intNumberOfSquares.

 
Dim intNumberOfSquares As Integer 
 
Private Sub Document_DocumentCreated(ByVal vsoDocument As Visio.IVDocument) 
 
'Initialize number of squares added. 
 intNumberOfSquares = 0 
 
End Sub 
 
 
Private Sub Document_ShapeAdded(ByVal vsoShape As Visio.IVShape) 
 
 Dim vsoMaster As Visio.Master 
 
 'Get the Master property of the shape. 
 'the shape was created locally. 
 Set vsoMaster = vsoShape.Master 
 
 'Check whether the shape has a master. If not, 
 If Not (vsoMaster Is Nothing) Then 
 
 'Check whether the master is "Square". 
 If vsoMaster.Name = "Square" Then 
 
 'Increment the count for the number of squares added. 
 intNumberOfSquares = intNumberOfSquares + 1 
 
 End If 
 
 End If 
 
 MsgBox "Number of squares: " & intNumberOfSquares, vbInformation, _ 
 "Document Created Example" 
 
End Sub

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.