IUIApplication::OnCreateUICommand 메서드(uiribbon.h)
IUICommandHandler에 명령을 바인딩하기 위해 Windows 리본 프레임워크 태그에 지정된 각 명령에 대해 호출됩니다.
구문
HRESULT OnCreateUICommand(
[in] UINT32 commandId,
[in] UI_COMMANDTYPE typeID,
[out] IUICommandHandler **commandHandler
);
매개 변수
[in] commandId
형식: UINT32
태그 리소스 파일에 지정된 명령의 ID입니다.
[in] typeID
형식: UI_COMMANDTYPE
특정 컨트롤과 연결된 명령 형식 입니다.
[out] commandHandler
형식: IUICommandHandler**
이 메서드가 반환되면 에는 IUICommandHandler 개체에 대한 포인터의 주소가 포함됩니다. 이 개체는 하나 이상의 명령에 바인딩된 호스트 애플리케이션 Command 처리기입니다.
반환 값
형식: HRESULT
메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.
설명
이 콜백 알림은 태그 리소스 파일을 처리하는 동안 발생한 각 명령 선언에 대해 리본 프레임워크에서 호스트 애플리케이션으로 전송됩니다.
리본 태그에 지정된 각 명령에 대해 리본 프레임워크에는 호스트 애플리케이션의 명령 처리기가 필요합니다. 새 처리기 또는 기존 처리기를 각 명령에 할당해야 합니다.
예제
다음 예제에서는 IUIApplication::OnCreateUICommand 메서드의 기본 구현을 보여 줍니다.
//
// FUNCTION: OnCreateUICommand(UINT, UI_COMMANDTYPE, IUICommandHandler)
//
// PURPOSE: Called by the Ribbon framework for each command specified in markup to allow
// the host application to bind a command handler to that command.
//
// PARAMETERS:
// nCmdID - The Command identifier.
// typeID - The Command type.
// ppCommandHandler - Pointer to the address of the Command handler.
//
// COMMENTS:
//
// For this sample, return the same command handler for all commands
// specified in the .xml file.
//
//
STDMETHODIMP CApplication::OnCreateUICommand(
UINT nCmdID,
UI_COMMANDTYPE typeID,
IUICommandHandler** ppCommandHandler)
{
HRESULT hr = E_NOTIMPL;
switch(typeID)
{
case UI_COMMANDTYPE_DECIMAL:
{
_cwprintf(L"IUIApplication::OnCreateUICommand called for Spinner.\r\n");
hr = _spSpinnerSite->QueryInterface(IID_PPV_ARGS(ppCommandHandler));
break;
}
default:
{
_cwprintf(L"IUIApplication::OnCreateUICommand called with CmdID=%u, typeID=%u.\r\n", nCmdID, typeID);
hr = _spCommandHandler->QueryInterface(IID_PPV_ARGS(ppCommandHandler));
}
}
return hr;
}
요구 사항
지원되는 최소 클라이언트 | Windows 7 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 R2 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | uiribbon.h |
DLL | Mshtml.dll |