IUIApplication::OnCreateUICommand-Methode (uiribbon.h)
Wird für jeden Befehl aufgerufen, der im Framework-Markup des Windows-Menübands angegeben ist, um den Befehl an einen IUICommandHandler zu binden.
Syntax
HRESULT OnCreateUICommand(
[in] UINT32 commandId,
[in] UI_COMMANDTYPE typeID,
[out] IUICommandHandler **commandHandler
);
Parameter
[in] commandId
Typ: UINT32
Die ID für den Befehl, der in der Markupressourcendatei angegeben ist.
[in] typeID
Typ: UI_COMMANDTYPE
Der Befehlstyp , der einem bestimmten Steuerelement zugeordnet ist.
[out] commandHandler
Typ: IUICommandHandler**
Wenn diese Methode zurückgibt, enthält die Adresse eines Zeigers auf ein IUICommandHandler-Objekt . Dieses Objekt ist ein Command-Handler der Hostanwendung, der an einen oder mehrere Befehle gebunden ist.
Rückgabewert
Typ: HRESULT
Wenn diese Methode erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.
Hinweise
Diese Rückrufbenachrichtigung wird vom Menübandframework für jede Command-Deklaration, die beim Verarbeiten der Markupressourcendatei gefunden wurde, an die Hostanwendung gesendet.
Für jeden Befehl, der im Menübandmarkup angegeben ist, erfordert das Menübandframework einen Command-Handler in der Hostanwendung. Jedem Befehl muss ein neuer oder vorhandener Handler zugewiesen werden.
Beispiele
Das folgende Beispiel veranschaulicht eine grundlegende Implementierung der IUIApplication::OnCreateUICommand-Methode .
//
// 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;
}
Anforderungen
Unterstützte Mindestversion (Client) | Windows 7 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | uiribbon.h |
DLL | Mshtml.dll |