Share via


Método InvisibleApp.QueueMarkerEvent (Visio)

Pone en cola un evento MarkerEvent que se desencadena después de todos los demás eventos en cola.

Sintaxis

expresión. QueueMarkerEvent (ContextString)

Expresión Variable que representa un objeto InvisibleApp .

Parameters

Nombre Obligatorio/opcional Tipo de datos Descripción
ContextString Obligatorio String Una cadena arbitraria que se pasa con el evento que desencadena.

Valor devuelto

Long

Comentarios

El método QueueMarkerEvent funciona junto con el evento MarkerEvent para permitir a un cliente de automatización situar un evento en su propia cola. El método QueueMarkerEvent hace que la aplicación desencadene un evento MarkerEvent después de que ésta haya desencadenado todos los eventos de su cola de eventos.

El método QueueMarkerEvent devuelve el número de secuencia del evento MarkerEvent que se desea desencadenar, y la cadena pasada al método QueueMarkerEvent (legalmente vacía) se pasa al controlador de eventos MarkerEvent.

Un programa cliente puede utilizar el número de secuencia o la cadena para correlacionar las llamadas a QueueMarkerEvent con los eventos MarkerEvent. De este modo, el cliente puede diferenciar los eventos originados por él mismo de los eventos que no ha originado.

Ejemplo:

Pegue este código de ejemplo en el objeto ThisDocument y, a continuación, ejecute el procedimiento UseMarker . El resultado aparecerá en la ventana Inmediato de Microsoft Visual Basic para Aplicaciones (VBA).

 
Dim WithEvents vsoApplication As Visio.Application 
 
Private Sub vsoApplication_MarkerEvent(ByVal app As Visio.IVApplication, _ 
 ByVal SequenceNum As Long, ByVal ContextString As String) 
 
 Debug.Print "Marker: " & app.EventInfo(0) 
 
End Sub 
 
Private Sub vsoApplication_ShapeAdded(ByVal Shape As Visio.IVShape) 
 
 Debug.Print " ShapeAdded: " & Shape.Name 
 
End Sub 
 
Public Sub UseMarker() 
 
 Set vsoApplication = ThisDocument.Application 
 
 'Marker events can be used to comment a segment 
 'of events in the queue. 
 vsoApplication.QueueMarkerEvent "I am starting..." 
 ActivePage.DrawRectangle 0, 0, 3, 3 
 vsoApplication.QueueMarkerEvent "I am finished..." 
 
End Sub

El resultado de la ventana Inmediato de VBA tiene este aspecto:

Marker: I am starting...

ShapeAdded: Sheet.1

Marker: I am finished...

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.