Compartilhar via


Método Event.SetFilterObjects (Visio)

Especifica uma matriz de tipos de objetos e um valor True ou False indicando como filtrar eventos para cada objeto.

Sintaxe

expression. SetFilterObjects( _Objects()_ )

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

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
Objetos() Obrigatório Long Uma matriz de tipos de objetos e um valor True ou False especificando como filtrar eventos para cada objeto.

Valor de retorno

Nada

Comentários

Quando um objeto Event criado com o método AddAdvise é adicionado à coleção EventList de um objeto de origem, o comportamento padrão é que todas as ocorrências desse evento sejam passadas para o coletor de eventos. O método SetFilterObjects oferece uma forma de ignorar eventos selecionados baseados no tipo de objeto.

O parâmetro Objects() passado para SetFilterObjects é uma matriz definida da maneira a seguir.

O número de elementos na série é um múltiplo de 2:

  • O primeiro elemento contém um tipo de objeto (um de visTypePage , visTypeGroup , visTypeShape, visTypeForeignObject, visTypeGuide ou visTypeDoc ).

  • O segundo elemento contém um valor True ou False, que indica se você está escutando a eventos para aquele objeto (True para escutar eventos de um objeto; False para excluir eventos de um objeto).

Para um evento passar com êxito por um filtro de eventos de objeto, ele deve satisfazer os seguintes critérios:

  • Deve ser um tipo de objeto válido.

  • Se todos os filtros forem True, o evento deverá corresponder a pelo menos um filtro.

  • Se todos os filtros forem False, o evento não deverá corresponder a nenhum filtro.

  • Se os filtros forem uma mistura de True e False, o evento deverá corresponder a pelo menos um filtro True e não deverá corresponder a nenhum filtro False.

Se não existirem intervalos True definidos na série, os eventos serão considerados True.

Por exemplo, se quiser escutar apenas a eventos originados por uma forma ou guia, você poderá passar uma matriz como a seguinte:

 
 Dim aFilterObjects(1 To (2 * 2)) As Long 
 aFilterObjects(1) = visTypeShape 
 aFilterObjects(2) = True 
 aFilterObjects(3) = visTypeGuide 
 aFilterObjects(4) = True 

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.