Método IViewObject::Freeze (oleidl.h)

Inmoviliza la representación dibujada de un objeto para que no cambie hasta que se llame al método IViewObject::Unfreeze . El uso más común de este método es para la impresión en bandas.

Sintaxis

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

Parámetros

[in] dwDrawAspect

Especifica cómo se va a representar el objeto. Las representaciones incluyen contenido, un icono, una miniatura o un documento impreso. Los valores válidos se toman de la enumeración DVASPECT. Consulte la enumeración DVASPECT para obtener más información.

[in] lindex

Parte del objeto que es de interés para la operación de dibujo. Su interpretación varía con dwAspect. Consulte la enumeración DVASPECT para obtener más información.

[in] pvAspect

Puntero a información adicional sobre la vista del objeto especificado en dwAspect. Puesto que ninguno de los aspectos actuales admite información adicional, pvAspect siempre debe ser NULL.

[out] pdwFreeze

Puntero a donde se devuelve una clave DWORD de identificación. Esta clave única se usa más adelante para cancelar la inmovilización mediante una llamada a IViewObject::Unfreeze. Esta clave es un índice que usa la memoria caché predeterminada para realizar un seguimiento de qué objeto está inmovilizado.

Valor devuelto

Este método devuelve S_OK cuando funciona correctamente. Otros posibles valores devueltos son los siguientes.

Código devuelto Descripción
VIEW_S_ALREADY_FROZEN
La presentación ya se ha inmovilizado. El valor de pdwFreeze es la clave de identificación del objeto ya inmovilizado.
OLE_E_BLANK
Presentación no en caché.
DV_E_LINDEX
Valor no válido para lindex; Actualmente; solo se admite -1.
DV_E_DVASPECT
Valor no válido para dwAspect.

Comentarios

El método IViewObject::Freeze hace que el objeto de vista inmovilice su representación dibujada hasta que una llamada posterior a IViewObject::Unfreeze la libere . Después de llamar a IViewObject::Freeze, las llamadas sucesivas a IViewObject::D raw con los mismos parámetros producen la misma imagen hasta que se llama a IViewObject::Unfreeze .

IViewObject::Freeze no forma parte del estado persistente del objeto y no continúa entre descargas y recargas del objeto.

El uso más común de este método es para la impresión en bandas.

Mientras se encuentra en un estado inmovilizado, no se envían las notificaciones de vista. Las notificaciones de vista pendientes se aplazan a la llamada posterior a IViewObject::Unfreeze.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado oleidl.h

Consulte también

DVASPECT

IViewObject

IViewObject::Unfreeze