跳转到主要内容
此方法在客户端实现。当用户在 Image ViewerZoom ViewerText EditorText ValidatorDocument Viewer 中松开某个键时,ABBYY FineReader Engine 会调用此方法。 该方法会向客户端传递所用的键码、重复次数和修饰键。借助此方法,可以取消该操作。

语法

C++

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

C#

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

Visual Basic .NET

Sub OnKeyUp( _
  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,以指示应终止该进程。在这种情况下,相应函数将返回 E_ABORT。

返回值

[仅适用于 C++] 如果此方法返回的值不是 S_OK,则表示客户端发生了错误,此时不会考虑 Cancel 参数的值。

备注

此方法的客户端实现必须确保:在方法内部抛出的所有异常都已被捕获并得到处理,且不会传播到方法外部。异常一旦传播到方法外部,可能会导致不可预知的结果 (例如程序终止) 。

另请参阅

IInputEvents