Partager via


IViewObject::SetAdvise, méthode (oleidl.h)

Établit une connexion entre l’objet de vue et un récepteur d’avis afin que le récepteur d’avis puisse être informé des modifications apportées à la vue de l’objet.

Syntaxe

HRESULT SetAdvise(
  [in] DWORD       aspects,
  [in] DWORD       advf,
  [in] IAdviseSink *pAdvSink
);

Paramètres

[in] aspects

Affichage pour lequel la connexion de conseil est en cours de configuration. Les valeurs valides sont extraites de l’énumération DVASPECT. Pour plus d’informations, consultez l’énumération DVASPECT .

[in] advf

Contient un groupe d'indicateurs pour contrôler la connexion consultative. Les valeurs valides proviennent de l’énumération ADVF. Toutefois, seules quelques-unes des valeurs ADVF possibles sont pertinentes pour cette méthode. Le tableau suivant décrit brièvement les valeurs pertinentes. Consultez l’énumération ADVF pour obtenir une description plus détaillée.

Valeur Signification
ADVF_ONLYONCE
Entraîne la destruction de la connexion de conseil après l’envoi de la première notification.
ADVF_PRIMEFIRST
Provoque l’envoi d’une notification initiale, que les données soient ou non modifiées par rapport à leur état actuel.
 
Note Les ADVF_ONLYONCE et les ADVF_PRIMEFIRST peuvent être combinés pour fournir un appel asynchrone à IDataObject::GetData.
 

[in] pAdvSink

Pointeur vers l’interface IAdviseSink sur le récepteur de conseil qui doit être informé des modifications. Une valeur NULL supprime toute connexion d’avis existante.

Valeur retournée

Cette méthode retourne S_OK en cas de réussite. Les autres valeurs de retour possibles sont les suivantes.

Code de retour Description
OLE_E_ADVISENOTSUPPORTED
Les notifications d’avis ne sont pas prises en charge.
DV_E_DVASPECT
Valeur non valide pour dwAspect.
E_INVALIDARG
Une ou plusieurs des valeurs fournies ne sont pas valides.
E_OUTOFMEMORY
Mémoire insuffisante disponible pour cette opération.

Notes

Une application conteneur qui demande une opération de dessin sur un objet de vue peut également s’inscrire avec la méthode IViewObject::SetAdvise pour être avertie lorsque la présentation de l’objet view change. Pour savoir quand les données sous-jacentes d’un objet changent, vous devez appeler IDataObject::D Advise séparément.

Pour supprimer une connexion d’avis existante, appelez la méthode IViewObject::SetAdvise avec pAdvSink défini sur NULL.

Si l’objet view change, un appel est effectué au récepteur de conseil approprié via sa méthode IAdviseSink::OnViewChange .

À tout moment, un objet de vue donné ne peut prendre en charge qu’une seule connexion de conseil. Par conséquent, lorsque IViewObject::SetAdvise est appelé et que l’objet de vue tient déjà sur un pointeur récepteur de conseil, OLE libère le pointeur existant avant l’inscription du nouveau.

Spécifications

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête oleidl.h

Voir aussi

ADVF

IAdviseSink

IViewObject

IViewObject::GetAdvise