Pular para o conteúdo principal
Este método é implementado no lado do cliente. Ele é chamado pelo ABBYY FineReader Engine quando o pressionamento de uma tecla resulta em um caractere no Image Viewer, Zoom Viewer, Text Editor, Text Validator ou Document Viewer. Ele fornece ao cliente o código do caractere, a contagem de repetição e algumas informações adicionais sobre o pressionamento da tecla. Com a ajuda desse método, é possível cancelar a operação.

Sintaxe

C++

HRESULT OnChar(
  int           Character,
  int           Count,
  int           Flags,
  VARIANT_BOOL* Cancel
);

C#

void OnChar(
  int      Character,
  int      Count,
  int      Flags,
  out bool Cancel
);

Visual Basic .NET

Sub OnChar( _
  Character As Integer, _
  Count As Integer, _
  Flags As Integer, _
  ByRef Cancel As Boolean _
)

Parâmetros

Character [in] Contém o valor do código de caractere da tecla. Count [in] Contém a contagem de repetição, ou seja, o número de vezes que o pressionamento da tecla se repete quando o usuário a mantém pressionada. Flags [in] Contém o código de varredura, o código de transição da tecla, o estado anterior da tecla e o código de contexto, conforme mostrado na lista a seguir:
ValorDescrição
0-7Especifica o código de varredura. O valor depende do fabricante do equipamento original (OEM).
8Especifica se a tecla é uma tecla estendida, como as teclas ALT e CTRL do lado direito presentes em um teclado aprimorado de 101 ou 102 teclas. O valor será 1 se for uma tecla estendida; caso contrário, será 0.
9-12Usado internamente pelo Windows.
13Especifica o código de contexto. O valor será 1 se a tecla ALT estiver pressionada enquanto essa tecla for pressionada; caso contrário, o valor será 0.
14Especifica o estado anterior da tecla. O valor será 1 se a tecla estiver pressionada antes de a mensagem ser enviada, ou 0 se a tecla estiver solta.
15Especifica o estado de transição. O valor será 1 se a tecla estiver sendo liberada, ou 0 se estiver sendo pressionada.
Cancel [out] Você pode definir essa variável como TRUE para indicar que o processo deve ser encerrado.

Valores de retorno

[Somente C++] Se este método retornar um valor diferente de S_OK, isso indica que ocorreu um erro no lado do cliente e, nesse caso, o valor do parâmetro Cancel não será levado em conta.

Observações

A implementação cliente desse método deve garantir que todas as exceções lançadas dentro do método sejam capturadas e tratadas, e que nenhuma exceção seja propagada para fora dele. A propagação de uma exceção para fora do método pode levar a resultados imprevisíveis (como o encerramento do programa).

Veja também

IInputEvents