Udostępnij za pośrednictwem


Opcjonalne metody w interfejsach sterujących

Implementacja interfejsu nie musi oznaczać implementowania wszystkich metod tego interfejsu, aby wykonać coś więcej niż zwracać E_NOTIMPL lub S_OK odpowiednio. W poniższej tabeli przedstawiono metody interfejsów wymienionych w What Support for an Interface Oznacza temat, który kontrolka może zaimplementować w ten sposób. Każda metoda, która nie jest wymieniona w tym miejscu, musi być w pełni zaimplementowana, jeśli interfejs jest obsługiwany.

IOleControl Komentarze
GetControlInfo, OnMnemonic
Obowiązkowe dla kontrolek z mnemonics.
IOleControl::OnAmbientPropertyChange
Obowiązkowe dla kontrolek korzystających z właściwości otoczenia.
IOleControl::FreezeEvents
Zobacz zamrażania zdarzeń
IOleObject
SetMoniker
Obowiązkowe, jeśli kontrolka nie jest oznaczona OLEMISC_CANTLINKINSIDE
GetMoniker
Obowiązkowe, jeśli kontrolka nie jest oznaczona OLEMISC_CANTLINKINSIDE
InitFromData
Fakultatywny
GetClipboardData
Fakultatywny
SetExtent
Obowiązkowe tylko dla DVASPECT_CONTENT
getExtent
Obowiązkowe tylko dla DVASPECT_CONTENT
SetColorScheme
Fakultatywny
DoVerb
Zobacz notatkę 1
IOleInPlaceObject
ContextSensitiveHelp
Fakultatywny
ponowne aktywowanie AndUndo
Fakultatywny
IOleInPlaceActiveObject
ContextSensitiveHelp
Fakultatywny
IViewObject2
blokowanie
Fakultatywny
odmrozić
Fakultatywny
GetColorSet
Fakultatywny
IPersistStream, IPersistStreamInit, IPersistMemory
GetSizeMax
Zobacz notatkę 2
  1. Kontrolka ze stronami właściwości musi obsługiwać IOleObject::D oVerb dla OLEIVERB_PROPERTIES i OLEIVERB_PRIMARY czasowników. Kontrolka, która może być aktywna, musi obsługiwać doverb dla czasownika OLEIVERB_INPLACEACTIVATE. Kontrolka, która może być aktywna w interfejsie użytkownika, musi również obsługiwać doverb dla czasownika OLEIVERB_UIACTIVATE.
  2. Jeśli kontrolka obsługuje IPersistStream lub IPersistStreamInit i może zwrócić dokładną wartość, należy to zrobić.

kontrolek