Saltar al contenido principal
Este método se implementa del lado del cliente. ABBYY FineReader Engine lo llama cuando se presiona una tecla en Visor de imágenes, Visor de zoom, Editor de texto, Validador de texto o Visor de documentos. Proporciona al cliente el código de la tecla, el número de repeticiones y las teclas modificadoras utilizadas. Con este método, es posible cancelar la operación.

Sintaxis

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 _
)

Parámetros

KeyCode [in] Especifica el código de tecla virtual de la tecla que se ha presionado. Count [in] Contiene el recuento de repeticiones, es decir, el número de veces que se repite la pulsación cuando el usuario mantiene presionada la tecla. Flags [in] Contiene el código de escaneo, el código de transición de tecla, el estado previo de la tecla y el código de contexto, como se muestra en la siguiente lista:
ValorDescripción
0-7Especifica el código de escaneo. El valor depende del fabricante del equipo original (OEM).
8Especifica si la tecla es una tecla extendida, como las teclas ALT y CTRL de la derecha que aparecen en un teclado mejorado de 101 o 102 teclas. El valor es 1 si es una tecla extendida; en caso contrario, es 0.
9-12Windows lo usa internamente.
13Especifica el código de contexto. El valor es 1 si la tecla ALT se mantiene presionada mientras se pulsa la tecla; en caso contrario, el valor es 0.
14Especifica el estado previo de la tecla. El valor es 1 si la tecla está presionada antes de que se envíe el mensaje; es 0 si la tecla no está presionada.
15Especifica el estado de transición. El valor es 1 si se está soltando la tecla; es 0 si se está presionando.
Cancel [out] Puede establecer esta variable en TRUE para indicar que se debe finalizar el proceso.

Valores de retorno

[Solo para C++] Si este método devuelve un valor distinto de S_OK, significa que se produjo un error del lado del cliente y, en ese caso, no se considera el valor del parámetro Cancel.

Observaciones

La implementación del cliente de este método debe garantizar que todas las excepciones que se produzcan dentro del método se capturen y se controlen, y que ninguna se propague fuera de él. Propagar una excepción fuera del método puede provocar resultados impredecibles (como la finalización del programa).

Consulte también

IInputEvents