Compartilhar via


Método EventList.Add (Visio)

Adiciona um objeto Event que executa um complemento quando ocorre um evento. O objeto Event é adicionado à coleção EventList do objeto de origem cujos eventos você deseja receber.

Sintaxe

expressão. Adicionar (EventCode, Action, Target, TargetArgs)

Expressão Uma variável que representa um objeto EventList .

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
EventCode Obrigatório Integer O(s) evento(s) a ser(em) capturado(s).
Action Obrigatório Integer A ação a ser executada. Deve ser visActCodeRunAddon, um membro de VisEventCodes na biblioteca de tipos do Visio.
Destino Obrigatório String O nome do seu complemento.
TargetArgs Obrigatório String A sequência de caracteres passada para seu objeto Event para definir sua propriedade TargetArgs.

Valor de retorno

Evento

Comentários

O objeto de origem cuja coleção EventList contém o objeto Event estabelece o escopo no qual os eventos são relatados. Os eventos são relatados para o objeto de origem e os objetos inferiores na hierarquia de modelo do objeto. Por exemplo, para executar um complemento quando um determinado documento é aberto, adicione um objeto Event para o evento DocumentOpened à coleção EventList desse documento. Para executar um complemento quando qualquer documento for aberto em uma instância do aplicativo, adicione o objeto Event à coleção EventList do objeto Application.

Criar objetos Event é uma maneira comum de manipular eventos no C++ ou em outras soluções diferentes do Microsoft Visual Basic. Quando você usa a palavra-chave WithEvents do Visual Basic para lidar com eventos, todos os eventos no evento de um objeto de origem atearam fogo, mas ao criar objetos Event , seu programa só será notificado dos eventos selecionados. Dependendo da solução, isso pode resultar em uma melhora no desempenho.

Objetos Event que executam complementos podem ser persistentes, ou seja, eles podem ser armazenados com um documento do Visio. Para ser persistente, as duas propriedades Persistent e Persistable de um objeto Event devem ser True.

Os argumentos passados ao método Add definem os valores iniciais das propriedades Event, Action (visActCodeRunAddon), Target e TargetArgs do objeto Event.

Os códigos de eventos são declarados pela biblioteca de tipos do Visio e possuem o prefixo visEvt. Frequentemente, os códigos de eventos são uma combinação de constantes. Por exemplo, visEvtAdd + visEvtDoc é o código de evento do evento DocumentAdded . Para localizar um código de evento que você deseja criar, consulte Códigos de eventos.

Para criar um objeto Event que avise o objeto coletor de eventos do chamador sobre um evento, consulte o método AddAdvise.

Exemplo

O exemplo a seguir mostra como adicionar um objeto Event que executa um complemento à coleção EventList do objeto de origem, neste caso um objeto Document cujos eventos você deseja receber.

Antes de executar essa macro, substituao nome do arquivo de caminho \ por um caminho válido e um nome de arquivo para um EXE (complemento executável) em seu projeto do Visio. O complemento não deve levar argumentos.

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

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.