IOleInPlaceActiveObject::TranslateAccelerator-Methode (oleidl.h)

Verarbeitet Menübeschleunigungsmeldungen aus der Nachrichtenwarteschlange des Containers. Diese Methode sollte nur für Objekte verwendet werden, die von einer DLL-Objektanwendung erstellt wurden.

Syntax

HRESULT TranslateAccelerator(
  [in] LPMSG lpmsg
);

Parameter

[in] lpmsg

Ein Zeiger auf eine MSG-Struktur für die Nachricht, die möglicherweise übersetzt werden muss.

Rückgabewert

Diese Methode gibt S_OK bei Erfolg zurück. Weitere mögliche Rückgabewerte:

Rückgabecode Beschreibung
S_FALSE
Die Nachricht wurde nicht übersetzt.
E_INVALIDARG
Die angegebenen Parameterwerte sind ungültig.
E_OUTOFMEMORY
IEs ist nicht genügend Arbeitsspeicher für den Vorgang verfügbar.
E_UNEXPECTED
Ein unerwarteter Fehler ist aufgetreten.

Hinweise

Hinweise für Anrufer

Aktive in-situ-Objekte müssen immer die erste Chance erhalten, Tastenkombinationen zu übersetzen. Sie können diese Möglichkeit bieten, indem Sie IOleInPlaceActiveObject::TranslateAccelerator aus der Nachrichtenschleife Ihres Containers aufrufen, bevor Sie eine andere Übersetzung durchführen. Sie sollten Ihre eigene Übersetzung nur anwenden, wenn diese Methode S_FALSE zurückgibt.

Wenn Sie IOleInPlaceActiveObject::TranslateAccelerator für ein Objekt aufrufen, das nicht von einer DLL-Objektanwendung erstellt wird, gibt der Standardobjekthandler S_FALSE zurück.

Hinweise zu Implementierern

Ein von einer EXE-Objektanwendung erstelltes Objekt ruft Tastatureingaben von einer eigenen Nachrichtenpumpe ab, sodass der Container diese Nachrichten nicht erhält.

Wenn Sie diese Methode implementieren müssen, können Sie dies tun, indem Sie einfach den Aufruf der TranslateAccelerator-Funktion umschließen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile oleidl.h

Weitere Informationen

IOleInPlaceActiveObject

OleTranslateAccelerator

TranslateAccelerator