Método IOleInPlaceObject::SetObjectRects (oleidl.h)

Especifica la cantidad del objeto en contexto que se va a ver.

Sintaxis

HRESULT SetObjectRects(
  [in] LPCRECT lprcPosRect,
  [in] LPCRECT lprcClipRect
);

Parámetros

[in] lprcPosRect

Puntero a la estructura RECT que contiene la posición del objeto en contexto mediante las coordenadas de cliente de su ventana primaria.

[in] lprcClipRect

Puntero al rectángulo externo que contiene el rectángulo de posición del objeto en contexto (lprcPosRect). Este rectángulo es relativo al área cliente de la ventana primaria del objeto.

Valor devuelto

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

Código devuelto Descripción
E_INVALIDARG
El puntero especificado no es válido.
E_OUTOFMEMORY
No hay suficiente memoria disponible para la operación.
E_UNEXPECTED
Se produjo un error inesperado.

Comentarios

Es posible que lprcClipRect cambie sin lprcPosRect .

El tamaño del rectángulo de un objeto en contexto siempre se calcula en píxeles. Esto es diferente de las visualizaciones de otros objetos OLE, que se encuentran en HIMETRIC.

Nota Al ejecutar IOleInPlaceObject::SetObjectRects, no realice llamadas a las funciones PeekMessage o GetMessage ni a un cuadro de diálogo. Si lo hace, puede provocar que el sistema interbloquee. Hay más restricciones sobre qué métodos y funciones de interfaz OLE se pueden llamar desde IOleInPlaceObject::SetObjectRects.
 

Notas a los autores de llamadas

El contenedor debe llamar a IOleInPlaceObject::SetObjectRects siempre que cambie la posición de la ventana del objeto en contexto o la parte visible del objeto en contexto.

Notas para los implementadores

El objeto debe ajustar su ventana local para que coincida con la intersección de lprcPosRect y lprcClipRect. El objeto también debe dibujar su contenido en la ventana en contexto del objeto para que tenga lugar el recorte adecuado.

El objeto debe comparar su ancho y alto con los proporcionados por su contenedor (transmitidos a través de lprcPosRect). Si la comparación no da lugar a una coincidencia, el contenedor aplica el escalado al objeto . A continuación, el objeto debe decidir si debe continuar la edición en contexto en el modo de escala/zoom o desactivar.

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

GetMessage

IOleInPlaceObject

IOleInPlaceSite::OnPosRectChange

PeekMessage