マウス ボタンの状態と、マウス イベントに関連付けられている Shift キーと Ctrl キーを返します。 読み取り専用です。
構文
式。 KeyButtonState
式MouseEvent オブジェクトを表す変数。
戻り値
Long
注釈
KeyButtonState に使用できる値は、Visio タイプ ライブラリの VisKeyButtonFlags で宣言されている次の表に示す値の組み合わせです。 たとえば、 KeyButtonState が 9 を返した場合、ユーザーが Ctrl キーを押しながらマウスの左ボタンをクリックしたことを示します。
定数 | 値 |
---|---|
visKeyControl | 8 |
visKeyShift | 4 |
visMouseLeft | 1 |
visMouseMiddle | 16 |
visMouseRight | 2 |
例
次のクラス モジュールは、MouseListener という名前のシンク クラスを定義する方法を示しており、作業中のウィンドウでのマウス操作によって発生したイベントをリッスンします。 このクラス モジュールでは、WithEvents キーワードを使用してオブジェクト変数 vsoWindow が宣言されています。 クラス モジュールには、 MouseDown イベントのイベント ハンドラーも含まれています。イミディエイト ウィンドウには、イベントが発生したときにマウス ボタンと Ctrl キーと Shift キーの状態が出力されます。
この例を実行するには、VBA プロジェクトに新しいクラス モジュールを挿入し、 MouseListener という名前を付けて、モジュールに次のコードを挿入します。
Dim WithEvents vsoWindow As Visio.Window
Private Sub Class_Initialize()
Set vsoWindow = ActiveWindow
End Sub
Private Sub Class_Terminate()
Set vsoWindow = Nothing
End Sub
Private Sub vsoWindow_MouseDown(ByVal Button As Long, ByVal KeyButtonState As Long, ByVal x As Double, ByVal y As Double, CancelDefault As Boolean)
Debug.Print "KeyButtonState is"; KeyButtonState
End Sub
次に、 ThisDocument プロジェクトに次のコードを挿入します。
Dim myMouseListener As MouseListener
Private Sub Document_DocumentSaved(ByVal doc As IVDocument)
Set myMouseListener = New MouseListener
End Sub
Private Sub Document_BeforeDocumentClose(ByVal doc As IVDocument)
Set myMouseListener = Nothing
End Sub
クラスを初期化するためにドキュメントを保存し、アクティブ ウィンドウ内の任意の場所 (必要に応じて Shift キーまたは Ctrl キーを押しながら) をクリックして 、MouseDown イベントを発生させます。 イミディエイト ウィンドウに、クリックされてイベントが発生したマウス ボタンの名前が表示されます。 いずれかのキーまたは両方のキーを押した場合は、押したキーまたはキーの名前も印刷されます。
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。