Partager via


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

Fige la représentation dessinée d’un objet afin qu’elle ne change pas tant que la méthode IViewObject ::Unfreeze n’est pas appelée. L’utilisation la plus courante de cette méthode est pour l’impression à bandes.

Syntaxe

HRESULT Freeze(
  [in]  DWORD dwDrawAspect,
  [in]  LONG  lindex,
  [in]  void  *pvAspect,
  [out] DWORD *pdwFreeze
);

Paramètres

[in] dwDrawAspect

Spécifie la représentation de l'objet. Les représentations incluent du contenu, une icône, une miniature ou un document imprimé. Les valeurs valides sont extraites de l’énumération DVASPECT. Pour plus d’informations, consultez l’énumération DVASPECT .

[in] lindex

Partie de l'objet appropriée pour l'opération de dessin. Son interprétation varie selon dwAspect. Pour plus d’informations, consultez l’énumération DVASPECT .

[in] pvAspect

Pointeur vers des informations supplémentaires sur la vue de l’objet spécifié dans dwAspect. Étant donné qu’aucun des aspects actuels ne prend en charge d’informations supplémentaires, pvAspect doit toujours avoir la valeur NULL.

[out] pdwFreeze

Pointeur vers l’emplacement où une clé DWORD d’identification est retournée. Cette clé unique est ensuite utilisée pour annuler le blocage en appelant IViewObject ::Unfreeze. Cette clé est un index que le cache par défaut utilise pour suivre l’objet qui est figé.

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
VIEW_S_ALREADY_FROZEN
La présentation a déjà été figée. La valeur de pdwFreeze est la clé d’identification de l’objet déjà figé.
OLE_E_BLANK
Présentation non dans le cache.
DV_E_LINDEX
Valeur non valide pour lindex ; Actuellement; seul -1 est pris en charge.
DV_E_DVASPECT
Valeur non valide pour dwAspect.

Remarques

La méthode IViewObject ::Freeze fait figer la représentation dessinée de l’objet view jusqu’à ce qu’un appel ultérieur à IViewObject ::Unfreeze le libère. Après avoir appelé IViewObject ::Freeze, les appels successifs à IViewObject ::D raw avec les mêmes paramètres produisent la même image jusqu’à ce que IViewObject ::Unfreeze soit appelé.

IViewObject ::Freeze ne fait pas partie de l’état persistant de l’objet et ne se poursuit pas entre les déchargements et les rechargements de l’objet.

L’utilisation la plus courante de cette méthode est pour l’impression à bandes.

Dans un état figé, les notifications d’affichage ne sont pas envoyées. Les notifications d’affichage en attente sont différées à l’appel suivant à IViewObject ::Unfreeze.

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 oleidl.h

Voir aussi

DVASPECT

IViewObject

IViewObject ::Unfreeze