> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# IInputEvents インターフェイスの OnChar メソッド

> Windows 上の ABBYY FineReader Engine Visual Components における IInputEvents インターフェイスの OnChar メソッド — このメソッドはクライアント側で実装されます。

このメソッドはクライアント側で実装されます。[Image Viewer](/ja/fine-reader/engine/visual-components-reference/imageviewer)、[Zoom Viewer](/ja/fine-reader/engine/visual-components-reference/zoomviewer)、[Text Editor](/ja/fine-reader/engine/visual-components-reference/texteditor)、[Text Validator](/ja/fine-reader/engine/visual-components-reference/textvalidator)、または [Document Viewer](/ja/fine-reader/engine/visual-components-reference/documentviewer) で、キーストロークが文字として解釈されると、ABBYY FineReader Engine によって呼び出されます。

このメソッドは、文字コード値、反復回数、およびキーストロークに関する追加情報をクライアントに渡します。このメソッドを使用すると、処理をキャンセルできます。

<div id="syntax">
  ## 構文
</div>

<div id="c">
  ### C++
</div>

```cpp theme={null}
HRESULT OnChar(
  int           Character,
  int           Count,
  int           Flags,
  VARIANT_BOOL* Cancel
);
```

### C\#

```csharp theme={null}
void OnChar(
  int      Character,
  int      Count,
  int      Flags,
  out bool Cancel
);
```

<div id="visual-basic-net">
  ### Visual Basic .NET
</div>

```vb theme={null}
Sub OnChar( _
  Character As Integer, _
  Count As Integer, _
  Flags As Integer, _
  ByRef Cancel As Boolean _
)
```

<div id="parameters">
  ## パラメーター
</div>

Character

\[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 に設定すると、処理を終了すべきであることを示せます。

<div id="return-values">
  ## 戻り値
</div>

\[C++ のみ] このメソッドが S\_OK 以外の値を返した場合は、クライアント側でエラーが発生したことを示します。この場合、Cancel パラメーターの値は考慮されません。

<div id="remarks">
  ## 注記
</div>

このメソッドのクライアント実装では、メソッド内でスローされたすべての例外を確実にキャッチして処理し、メソッドの外部に伝播しないようにする必要があります。例外がメソッドの外部に伝播すると、プログラムの終了など、予期しない結果を招くおそれがあります。

<div id="see-also">
  ## 関連項目
</div>

[IInputEvents](/ja/fine-reader/engine/visual-components-reference/iinputevents)
