Compartilhar via


Métodos opcionais em interfaces de controle

Implementar uma interface não significa necessariamente implementar todos os métodos dessa interface para fazer nada mais do que retornar E_NOTIMPL ou S_OK conforme apropriado. A tabela a seguir identifica os métodos das interfaces listadas no tópico What Support for an Interface Means que um controle pode implementar dessa maneira. Qualquer método não listado aqui deve ser totalmente implementado se a interface tiver suporte.

IOleControl Comentários
GetControlInfo, OnMnemonic
Obrigatório para controles com mnemônicos.
IOleControl::OnAmbientPropertyChange
Obrigatório para controles que usam propriedades ambiente.
IOleControl::FreezeEvents
Consulte de congelamento de eventos
IOleObject
SetMoniker
Obrigatório se o controle não estiver marcado com OLEMISC_CANTLINKINSIDE
GetMoniker
Obrigatório se o controle não estiver marcado com OLEMISC_CANTLINKINSIDE
initFromData
Opcional
GetClipboardData
Opcional
SetExtent
Obrigatório apenas para DVASPECT_CONTENT
GetExtent
Obrigatório apenas para DVASPECT_CONTENT
SetColorScheme
Opcional
do DoVerb
Consulte a observação 1
IOleInPlaceObject
ContextSensitiveHelp
Opcional
ReativarAndUndo
Opcional
IOleInPlaceActiveObject
ContextSensitiveHelp
Opcional
IViewObject2
Congelar
Opcional
descongelar
Opcional
GetColorSet
Opcional
IPersistStream, IPersistStreamInit, IPersistMemory
GetSizeMax
Consulte a observação 2
  1. Um controle com páginas de propriedades deve dar suporte IOleObject::D oVerb para os verbos OLEIVERB_PROPERTIES e OLEIVERB_PRIMARY. Um controle que pode estar ativo deve dar suporte DoVerb para o verbo OLEIVERB_INPLACEACTIVATE. Um controle que pode ser ativo da interface do usuário também deve dar suporte DoVerb para o verbo OLEIVERB_UIACTIVATE.
  2. Se um controle der suporte a IPersistStream ou IPersistStreamInit e puder retornar um valor preciso, ele deverá fazer isso.

controles