메인 콘텐츠로 건너뛰기
이 메서드는 클라이언트 측에서 구현됩니다. Image Viewer, Zoom Viewer, Text Editor, Text Validator 또는 Document Viewer에서 키를 누르면 ABBYY FineReader Engine이 이 메서드를 호출합니다. 이 메서드는 키 코드, 반복 횟수 및 사용된 수정 키를 클라이언트에 전달합니다. 이 메서드를 통해 작업을 취소할 수도 있습니다.

구문

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

매개변수

KeyCode [in] 눌린 키의 가상 키 코드를 지정합니다. Count [in] 반복 횟수, 즉 사용자가 키를 누르고 있는 동안 키 입력이 몇 번 반복되는지를 나타냅니다. Flags [in] 다음 목록과 같이 스캔 코드, 키 전이 코드, 이전 키 상태 및 컨텍스트 코드를 포함합니다.
설명
0-7스캔 코드를 지정합니다. 값은 OEM(주문자 상표 부착 생산업체)에 따라 달라집니다.
8키가 확장 키인지 여부를 지정합니다. 예를 들어 확장된 101키 또는 102키 키보드의 오른쪽 ALT 키와 CTRL 키가 이에 해당합니다. 확장 키이면 값은 1이고, 그렇지 않으면 0입니다.
9-12Windows에서 내부적으로 사용됩니다.
13컨텍스트 코드를 지정합니다. 키를 누를 때 ALT 키도 함께 눌려 있으면 값은 1이고, 그렇지 않으면 0입니다.
14이전 키 상태를 지정합니다. 메시지가 전송되기 전에 키가 눌린 상태이면 값은 1이고, 떼어진 상태이면 0입니다.
15전이 상태를 지정합니다. 키가 해제되는 중이면 값은 1이고, 눌리는 중이면 0입니다.
Cancel [out] 프로세스를 종료해야 함을 나타내려면 이 변수를 TRUE로 설정할 수 있습니다.

반환 값

[C++ 전용] 이 메서드가 S_OK 이외의 값을 반환하면 클라이언트 측에서 오류가 발생했음을 의미하며, 이 경우 Cancel Parameter의 값은 고려되지 않습니다.

비고

이 메서드의 클라이언트 구현에서는 메서드 내부에서 발생하는 모든 예외를 반드시 포착하여 처리해야 하며, 어떤 예외도 메서드 외부로 전파되지 않도록 해야 합니다. 예외가 메서드 외부로 전파되면 예측할 수 없는 결과(예: 프로그램 종료)가 발생할 수 있습니다.

참고 항목

IInputEvents