跳轉到主要內容
此方法由用戶端實作。當在 Image ViewerZoom ViewerText EditorText ValidatorDocument Viewer 中按下按鍵時,ABBYY FineReader Engine 會呼叫此方法。 此方法會將按鍵代碼、重複次數及所使用的修飾鍵傳遞給客戶端。您也可以藉由此方法取消該操作。

語法

C++

HRESULT OnKeyDown(
  int           KeyCode,
  int           Count,
  int           Flags,
  VARIANT_BOOL* Cancel
);

C#

void OnKeyDown(
  int      KeyCode,
  int      Count,
  int      Flags,
  out bool Cancel
);

Visual Basic .NET

Sub OnKeyDown( _
  KeyCode As Integer, _
  Count As Integer, _
  Flags As Integer, _
  ByRef Cancel As Boolean _
)

參數

KeyCode [in] 指定所按下按鍵的虛擬鍵碼。 Count [in] 包含重複次數,也就是當使用者按住按鍵時,該按鍵重複輸入的次數。 Flags [in] 包含掃描碼、按鍵轉換碼、先前的按鍵狀態及內容代碼,如下列清單所示:
ValueDescription
0-7指定掃描碼。其值取決於原始設備製造商 (OEM)。
8指定該按鍵是否為延伸按鍵,例如增強型 101 鍵或 102 鍵鍵盤上的右側 ALT 與 CTRL 鍵。若為延伸按鍵,值為 1;否則為 0。
9-12由 Windows 內部使用。
13指定內容代碼。若按下該鍵時 ALT 鍵也處於按住狀態,則值為 1;否則值為 0。
14指定先前的按鍵狀態。若在傳送訊息之前該鍵已按下,則值為 1;若該鍵處於彈起狀態,則值為 0。
15指定轉換狀態。若按鍵正在釋放,則值為 1;若按鍵正在按下,則值為 0。
Cancel [out] 您可以將此變數設為 TRUE,表示應終止程序。

回傳值

[僅限 C++] 如果此方法回傳的不是 S_OK,則表示用戶端發生錯誤;在此情況下,Cancel 參數的值將不予考慮。

備註

此 方法 的客戶端實作必須確保,凡是在 方法 內部擲出的所有例外狀況,都會被攔截並處理,且不會傳遞到 方法 外部。若例外狀況傳遞到 方法 外部,可能會導致不可預期的結果 (例如程式終止) 。

另請參閱

IInputEvents