Необязательные методы в интерфейсах управления
Реализация интерфейса не обязательно означает реализацию всех методов этого интерфейса, чтобы сделать что-либо больше, чем возвращать E_NOTIMPL или S_OK соответствующим образом. В следующей таблице определены методы интерфейсов, перечисленных в разделе "Поддержка интерфейса" , который может реализовать элемент управления таким образом. Любой метод, не указанный здесь, должен быть полностью реализован, если интерфейс поддерживается.
IOleControl | Комментарии |
---|---|
GetControlInfo, OnMnemonic |
Обязательный для элементов управления с mnemonics. |
IOleControl::OnAmbientPropertyChange |
Обязательный для элементов управления, использующих внешние свойства. |
IOleControl::FreezeEvents |
См. раздел "Замораживание событий" |
IOleObject | |
SetMoniker |
Обязательно, если элемент управления не помечен OLEMISC_CANTLINKINSIDE |
GetMoniker |
Обязательно, если элемент управления не помечен OLEMISC_CANTLINKINSIDE |
InitFromData |
Необязательно |
GetClipboardData |
Необязательно |
SetExtent |
Обязательно только для DVASPECT_CONTENT |
GetExtent |
Обязательно только для DVASPECT_CONTENT |
SetColorScheme |
Необязательно |
DoVerb |
См. примечание 1 |
IOleInPlaceObject | |
ContextSensitiveHelp |
Необязательно |
Повторная активацияAndUndo |
Необязательно |
IOleInPlaceActiveObject | |
ContextSensitiveHelp |
Необязательно |
IViewObject2 | |
Заморозить |
Необязательно |
Разморозить |
Необязательно |
GetColorSet |
Необязательно |
IPersistStream, IPersistStreamInit, IPersistMemory | |
GetSizeMax |
См. примечание 2 |
- Элемент управления со страницами свойств должен поддерживать IOleObject::D oVerb для команд OLEIVERB_PROPERTIES и OLEIVERB_PRIMARY. Элемент управления, который может быть активным, должен поддерживать DoVerb для команды OLEIVERB_INPLACEACTIVATE. Элемент управления, который может быть активным в пользовательском интерфейсе, также должен поддерживать DoVerb для команды OLEIVERB_UIACTIVATE.
- Если элемент управления поддерживает IPersistStream или IPersistStreamInit и может возвращать точное значение, то он должен сделать это.