Application.QueueMarkerEvent メソッド (Visio)

他のすべてのキューに入れられたイベントの後に発生する MarkerEvent イベントをキューに入れます。

構文

QueueMarkerEvent (ContextString)

expressionApplication オブジェクトを 表す変数。

パラメーター

名前 必須 / オプション データ型 説明
ContextString 必須 String 発生するイベントと共に渡される任意の文字列です。

戻り値

Long

注釈

QueueMarkerEvent メソッドは、MarkerEvent イベントと連携して機能し、オートメーション クライアントがイベントをそれ自体にキューに入れることができるようにします。 QueueMarkerEvent メソッドを使用すると、アプリケーションは、イベント キュー内のすべてのイベントを発生させた後に MarkerEvent イベントを発生させます。

QueueMarkerEvent メソッドは、発生する MarkerEvent イベントのシーケンス番号を返し、QueueMarkerEvent メソッドに渡された文字列 (正式には空の文字列) が MarkerEvent イベント ハンドラーに渡されます。

クライアント プログラムはこのシーケンス番号か文字列のいずれかを使用して、QueueMarkerEvent の呼び出しと MarkerEvent イベントを相互に関連付けることができます。 このようにして、クライアントは発生したイベントと発生しなかったイベントを区別できます。

次のサンプル コードを ThisDocument オブジェクトに貼り付け、 UseMarker プロシージャを実行します。 出力結果は、VBA (Microsoft Visual Basic for Applications) のイミディエイト ウィンドウに表示されます。

 
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

次の内容が VBA のイミディエイト ウィンドウに出力されます。

Marker: I am starting...

ShapeAdded: Sheet.1

Marker: I am finished...

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。