Compartilhar via


Método IUIApplication::OnCreateUICommand (uiribbon.h)

Chamado para cada Comando especificado na marcação da estrutura da Faixa de Opções do Windows para associar o Comando a um IUICommandHandler.

Sintaxe

HRESULT OnCreateUICommand(
  [in]  UINT32            commandId,
  [in]  UI_COMMANDTYPE    typeID,
  [out] IUICommandHandler **commandHandler
);

Parâmetros

[in] commandId

Tipo: UINT32

A ID do Comando, que é especificada no arquivo de recurso de marcação.

[in] typeID

Tipo: UI_COMMANDTYPE

O tipo de comando associado a um controle específico.

[out] commandHandler

Tipo: IUICommandHandler**

Quando esse método retorna, contém o endereço de um ponteiro para um objeto IUICommandHandler . Esse objeto é um manipulador de comando do aplicativo host associado a um ou mais Comandos.

Valor retornado

Tipo: HRESULT

Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

Essa notificação de retorno de chamada é enviada pela estrutura da Faixa de Opções para o aplicativo host para cada declaração de comando encontrada durante o processamento do arquivo de recurso de marcação.

Para cada Comando especificado na marcação da Faixa de Opções, a estrutura da Faixa de Opções requer um manipulador de comando no aplicativo host. Um manipulador novo ou existente deve ser atribuído a cada Comando.

Exemplos

O exemplo a seguir demonstra uma implementação básica do método 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;
}

Requisitos

   
Cliente mínimo com suporte Windows 7 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 R2 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho uiribbon.h
DLL Mshtml.dll

Confira também

IUIApplication

Exemplos da Estrutura da Faixa de Opções do Windows