OnKeyboardEvent

www.altova.com このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  ユーザー レファレンス > オブジェクト > AuthenticView > Events >

OnKeyboardEvent

イベント: OnKeyboardEvent (eKeyEvent  を SPYKeyEvent として、 nKeyCode long として、 nVirtualKeyStatus long として) をブール値として

 

XMLSpy スクリプト環境 - VBScript:

Function On_AuthenticKeyboardEvent(eKeyEvent, nKeyCode, nVirtualKeyStatus)

 ' On_AuthenticKeyboardEvent = True  ' to cancel bubbling of event

End Function

 

XMLSpy スクリプト環境 - JScript:

function On_AuthenticKeyboardEvent(eKeyEvent, nKeyCode, nVirtualKeyStatus)

{

 // return false;  /* to cancel bubbling of event */

}

 

XMLSpy IDE プラグイン:

IXMLSpyPlugIn.OnEvent (30, ...)        // nEventId = 30

 

説明

このイベントは WM_KEYDOWN、WM_KEYUP および WM_CHAR ウィンドウメッセージのためにトリガーされます。

 

実際のメッセージ型は eKeyEvent パラメーター内で使用することができます。仮想キーの状態はパラメーター nVirtualKeyStatus 内で結合されます。異なるキーまたはその組合せのために、列挙データ型 SPYVirtualKeyMask 内で定義されているビットマスクを使用します。

 

注釈: XMLSpy のスクリプト環境と IDE プラグインからの次のイベントはサポートされますが、このイベントでは古いため使用されません:

On_AuthenticKeyUp()                IXMLSpyPlugIn.OnEvent (13, ...)        // nEventId = 13

On_AuthenticKeyDown()                IXMLSpyPlugIn.OnEvent (12, ...)        // nEventId = 12

On_AuthenticKeyPressed()        IXMLSpyPlugIn.OnEvent (14, ...)        // nEventId = 14

 

 

サンプル

' ----------------------------------------------------------------------------

' VB code snippet - connecting to object level events

' ----------------------------------------------------------------------------

' access XMLSpy (without checking for any errors)

Dim objSpy As XMLSpyLib.Application

Set objSpy = GetObject("", "XMLSpy.Application")

 

' this is the event callback routine connected to the OnKeyboard

' event of object objView

Private Function objView_OnKeyboardEvent(ByVal i_keyEvent As Long, ByVal io_pnKeyCode As Long, ByVal i_nVirtualKeyStatus As Long) As Boolean

  If ((i_keyEvent = XMLSpyLib.spyKeyUp) And ((i_nVirtualKeyStatus And XMLSpyLib.spyCtrlKeyMask) <> 0)) Then

       MsgBox ("Ctrl " & io_pnKeyCode & " pressed")

       objView_OnKeyboardEvent = True

  Else

       objView_OnKeyboardEvent = False

  End If

End Function

 

' use VBA keyword WithEvents to connect to object-level event

Dim WithEvents objView As XMLSpyLib.AuthenticView

Set objView = objSpy.ActiveDocument.AuthenticView

 

' continue here with something useful ...

' and serve the windows message loop

 


(C) 2019 Altova GmbH