Passer au contenu principal
Cette méthode est implémentée côté client. Elle est appelée par ABBYY FineReader Engine lorsqu’une touche est pressée dans Image Viewer, Zoom Viewer, Text Editor, Text Validator ou Document Viewer. Elle transmet au client le code de la touche, le nombre de répétitions et les touches modificatrices utilisées. Cette méthode permet d’annuler l’opération.

Syntaxe

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

Paramètres

KeyCode [in] Spécifie le code de touche virtuelle de la touche enfoncée. Count [in] Contient le nombre de répétitions, c’est-à-dire le nombre de fois que la frappe est répétée lorsque l’utilisateur maintient la touche enfoncée. Flags [in] Contient le code de balayage, le code de transition de touche, l’état précédent de la touche et le code de contexte, comme indiqué dans la liste suivante :
ValeurDescription
0-7Spécifie le code de balayage. La valeur dépend du fabricant de l’équipement d’origine (OEM).
8Spécifie si la touche est une touche étendue, comme les touches ALT et CTRL de droite présentes sur un clavier amélioré de 101 ou 102 touches. La valeur est 1 s’il s’agit d’une touche étendue ; sinon, elle est 0.
9-12Utilisé en interne par Windows.
13Spécifie le code de contexte. La valeur est 1 si la touche ALT est maintenue enfoncée lorsque la touche est pressée ; sinon, la valeur est 0.
14Spécifie l’état précédent de la touche. La valeur est 1 si la touche est enfoncée avant l’envoi du message, ou 0 si la touche est relâchée.
15Spécifie l’état de transition. La valeur est 1 si la touche est en cours de relâchement, ou 0 si la touche est en cours d’enfoncement.
Cancel [out] Vous pouvez définir cette variable sur TRUE pour indiquer que le processus doit être interrompu.

Valeurs de retour

[C++ uniquement] Si cette méthode renvoie une valeur autre que S_OK, cela indique qu’une erreur s’est produite côté client, et la valeur du paramètre Cancel n’est alors pas prise en compte.

Remarques

L’implémentation côté client de cette méthode doit garantir que toutes les exceptions levées au sein de la méthode sont interceptées et traitées, et qu’aucune n’est propagée à l’extérieur de la méthode. La propagation d’une exception hors de la méthode peut entraîner des résultats imprévisibles (comme l’arrêt du programme).

Voir aussi

IInputEvents