Partager via


IOleDocumentView ::SetInPlaceSite, méthode (docobj.h)

Associe le site d’affichage de document d’un conteneur à l’objet view d’un document.

Syntaxe

HRESULT SetInPlaceSite(
  [in] IOleInPlaceSite *pIPSite
);

Paramètres

[in] pIPSite

Pointeur vers l’interface IOleInPlaceSite du site d’affichage de document. Ce paramètre peut être NULL, auquel cas l’objet d’affichage de document perd toute association avec le conteneur.

Valeur retournée

Cette méthode retourne S_OK si un site d’affichage de document a été correctement associé (ou dissocié si pIPSite a la valeur NULL) à un objet d’affichage de document. Les autres valeurs de retour possibles sont les suivantes.

Code de retour Description
E_FAIL
L'opération a échoué.

Remarques

Dans le cadre de l’activation d’un objet document, un conteneur doit passer l’objet un pointeur vers l’implémentation du conteneur de IOleInPlaceSite. Ce pointeur désigne le site d’affichage de document qui doit être associé à l’affichage sur lequel cette méthode est appelée.

Un conteneur transmet normalement ce pointeur en réponse à la demande d’activation d’un document. Un document effectue une telle demande en appelant IOleDocumentSite ::ActivateMe et en passant au conteneur un pointeur vers la vue à activer. Le conteneur, à son tour, utilise ce pointeur pour appeler IOleDocumentView ::SetInPlaceSite.

Remarques aux appelants

Si le conteneur demande la création et l’activation d’une nouvelle instance d’un objet document, plutôt que l’activation d’un instance chargé d’un objet document, le site d’affichage est passé dans l’argument pIPSite de IOleDocument ::CreateView. Par conséquent, un appel explicite à IOleDocumentView ::SetInPlaceSite n’est pas nécessaire.

Remarques aux implémenteurs

Si cette méthode est appelée sur une vue qui est déjà associée à un site d’affichage, la vue doit effectuer une opération de nettoyage en vue de son activation dans le nouveau site. Tout d’abord, la vue doit se désactiver dans le site actuel et libérer son pointeur vers ce site. Ensuite, si le nouveau pointeur IOleInPlaceSite n’est pas NULL, la vue doit enregistrer le pointeur et appeler IUnknown ::AddRef dessus. La vue doit ensuite attendre que le conteneur lui indique quand s’activer dans le nouveau site d’affichage.

Une vue de document doit implémenter cette méthode complètement ; E_NOTIMPL n’est pas une valeur de retour acceptable.

Configuration requise

Condition requise Valeur
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 docobj.h

Voir aussi

IOleDocumentView

IOleDocumentView ::SetInPlaceSite