跳转到主要内容
此方法在客户端实现。当在 图像查看器缩放查看器文本编辑器文本验证器文档查看器 中按下某个按键时,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] 包含扫描码、键过渡码、先前键状态和上下文代码,如下表所示:
说明
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