OleTranslateAccelerator 함수(ole2.h)
개체 애플리케이션에서 호출하면 개체의 컨테이너가 컨테이너의 가속기 테이블에 따라 가속기를 변환할 수 있습니다.
구문
HRESULT OleTranslateAccelerator(
[in] LPOLEINPLACEFRAME lpFrame,
[in] LPOLEINPLACEFRAMEINFO lpFrameInfo,
[in] LPMSG lpmsg
);
매개 변수
[in] lpFrame
키 입력을 보낼 수 있는 IOleInPlaceFrame 인터페이스에 대한 포인터입니다.
[in] lpFrameInfo
컨테이너에서 가져온 가속기 테이블을 포함하는 OLEINPLACEFRAMEINFO 구조체에 대한 포인터입니다.
[in] lpmsg
키 입력을 포함하는 MSG 구조체에 대한 포인터입니다.
반환 값
이 함수는 성공에 대한 S_OK 반환합니다. 다른 가능한 값은 다음과 같습니다.
반환 코드 | 설명 |
---|---|
|
개체는 이 메시지를 계속 처리해야 합니다. |
설명
개체 서버는 OleTranslateAccelerator 를 호출하여 개체의 컨테이너가 lpFrameInfo가 가리키는 컨테이너의 가속기 테이블에 따라 가속기 키 입력을 변환할 수 있도록 합니다. 포함된 개체가 활성 개체이지만, 개체의 서버는 항상 받은 메시지를 변환할 수 있는 첫 번째 기회를 가집니다. 이 작업을 원하지 않는 경우 서버는 OleTranslateAccelerator 를 호출하여 개체의 컨테이너에 기회를 제공합니다. 키보드 입력이 컨테이너 제공 가속기 테이블에 있는 가속기와 일치하는 경우 OleTranslateAccelerator 는 IOleInPlaceFrame::TranslateAccelerator 메서드를 통해 메시지 및 해당 명령 식별자를 컨테이너에 전달합니다. 이 메서드는 키 입력이 사용되는 경우 S_OK 반환합니다. 그렇지 않으면 S_FALSE 반환됩니다.
컨테이너의 액셀러레이터 테이블은 자체 가속기 키 입력 변환을 수행하는 개체 애플리케이션에서 제대로 작동할 수 있도록 정의해야 합니다. 이러한 테이블은 다음 형식을 사용해야 합니다.
"char", wID, VIRTKEY, CONTROL
키보드 가속기를 설명하는 가장 일반적인 방법입니다. 이렇게 하지 않으면 현재 위치 세션 중에 키 입력이 손실되거나 잘못된 개체로 전송될 수 있습니다.
개체는 IsAccelerator 함수를 호출하여 가속기 키 입력이 개체 또는 컨테이너에 속하는지 여부를 확인할 수 있습니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | ole2.h |
라이브러리 | Ole32.lib |
DLL | Ole32.dll |
API 세트 | ext-ms-win-com-ole32-l1-1-3(Windows 10 버전 10.0.10240에 도입됨) |