Metode Opsional dalam Antarmuka Kontrol

Menerapkan antarmuka tidak selalu berarti mengimplementasikan semua metode antarmuka tersebut untuk melakukan apa pun selain mengembalikan E_NOTIMPL atau S_OK sebagaimana mestinya. Tabel berikut mengidentifikasi metode antarmuka yang tercantum dalam Apa Dukungan untuk Antarmuka Berarti topik yang dapat diterapkan kontrol dengan cara ini. Metode apa pun yang tidak tercantum di sini harus sepenuhnya diimplementasikan jika antarmuka didukung.

IOleControl Komentar
GetControlInfo, OnMnemonic
Wajib untuk kontrol dengan mnemonics.
IOleControl::OnAmbientPropertyChange
Wajib untuk kontrol yang menggunakan properti sekitar.
IOleControl::FreezeEvents
Lihat Pembeku peristiwa
IOleObject
SetMoniker
Wajib jika kontrol tidak ditandai dengan OLEMISC_CANTLINKINSIDE
GetMoniker
Wajib jika kontrol tidak ditandai dengan OLEMISC_CANTLINKINSIDE
InitFromData
Fakultatif
GetClipboardData
Fakultatif
SetExtent
Wajib hanya untuk DVASPECT_CONTENT
GetExtent
Wajib hanya untuk DVASPECT_CONTENT
SetColorScheme
Fakultatif
DoVerb
Lihat catatan 1
IOleInPlaceObject
contextSensitiveHelp
Fakultatif
ReactivateAndUndo
Fakultatif
IOleInPlaceActiveObject
contextSensitiveHelp
Fakultatif
IViewObject2
Bekukan
Fakultatif
Unfreeze
Fakultatif
GetColorSet
Fakultatif
IPersistStream, IPersistStreamInit, IPersistMemory
GetSizeMax
Lihat catatan 2
  1. Kontrol dengan halaman properti harus mendukungIOleObject::D oVerb untuk kata kerja OLEIVERB_PROPERTIES dan OLEIVERB_PRIMARY. Kontrol yang dapat aktif harus mendukung DoVerb untuk kata kerja OLEIVERB_INPLACEACTIVATE. Kontrol yang dapat menjadi UI aktif juga harus mendukung DoVerb untuk kata kerja OLEIVERB_UIACTIVATE.
  2. Jika kontrol mendukung IPersistStream atau IPersistStreamInit dan dapat mengembalikan nilai yang akurat, maka itu harus melakukannya.

Kontrol