Optionale Methoden in Steuerelementschnittstellen
Das Implementieren einer Schnittstelle bedeutet nicht unbedingt, dass alle Methoden dieser Schnittstelle implementiert werden, um alles mehr zu tun, als E_NOTIMPL oder S_OK je nach Bedarf zurückzugeben. In der folgenden Tabelle sind die Methoden der Schnittstellen aufgeführt, die in der Welche Unterstützung für eine Schnittstelle Thema bezeichnet wird, das ein Steuerelement auf diese Weise implementieren kann. Alle hier nicht aufgeführten Methoden müssen vollständig implementiert werden, wenn die Schnittstelle unterstützt wird.
IOleControl | Kommentare |
---|---|
GetControlInfo, OnMnemonic |
Obligatorisch für Steuerelemente mit Mnemonics. |
IOleControl::OnAmbientPropertyChange |
Obligatorisch für Steuerelemente, die Umgebungseigenschaften verwenden. |
IOleControl::FreezeEvents |
Siehe ereignisgefrorene |
IOleObject | |
SetMoniker |
Obligatorisch, wenn das Steuerelement nicht mit OLEMISC_CANTLINKINSIDE gekennzeichnet ist |
GetMoniker |
Obligatorisch, wenn das Steuerelement nicht mit OLEMISC_CANTLINKINSIDE gekennzeichnet ist |
InitFromData- |
Wahlfrei |
GetClipboardData- |
Wahlfrei |
SetExtent- |
Nur für DVASPECT_CONTENT obligatorisch |
GetExtent- |
Nur für DVASPECT_CONTENT obligatorisch |
SetColorScheme- |
Wahlfrei |
DoVerb- |
Siehe Hinweis 1 |
IOleInPlaceObject | |
ContextSensitiveHelp- |
Wahlfrei |
ReactivateAndUndo |
Wahlfrei |
IOleInPlaceActiveObject | |
ContextSensitiveHelp- |
Wahlfrei |
IViewObject2 | |
fixieren |
Wahlfrei |
Aufheben der Fixierung |
Wahlfrei |
GetColorSet- |
Wahlfrei |
IPersistStream, IPersistStreamInit, IPersistMemory | |
GetSizeMax |
Siehe Hinweis 2 |
- Ein Steuerelement mit Eigenschaftenseiten muss IOleObject::D oVerb- für die verben OLEIVERB_PROPERTIES und OLEIVERB_PRIMARY unterstützen. Ein Steuerelement, das aktiv sein kann, muss DoVerb- für das verb OLEIVERB_INPLACEACTIVATE unterstützen. Ein Steuerelement, das aktiv sein kann, muss auch DoVerb- für das verb OLEIVERB_UIACTIVATE unterstützen.
- Wenn ein Steuerelement IPersistStream oder IPersistStreamInit unterstützt und einen genauen Wert zurückgeben kann, sollte dies erfolgen.