Share via


Función OleDraw (ole2.h)

Permite dibujar objetos más fácilmente. Puede usarlo en lugar de llamar directamente a IViewObject::D raw .

Sintaxis

HRESULT OleDraw(
  [in] LPUNKNOWN pUnknown,
  [in] DWORD     dwAspect,
  [in] HDC       hdcDraw,
  [in] LPCRECT   lprcBounds
);

Parámetros

[in] pUnknown

Puntero a la interfaz IUnknown en el objeto de vista que se va a dibujar.

[in] dwAspect

Cómo se va a representar el objeto. Las representaciones incluyen contenido, un icono, una miniatura o un documento impreso. Los valores posibles se toman de la enumeración DVASPECT .

[in] hdcDraw

Contexto de dispositivo en el que se va a dibujar. No puede ser un contexto de dispositivo de metarchivo.

[in] lprcBounds

Puntero a una estructura RECT que especifica el rectángulo en el que se debe dibujar el objeto. Este parámetro se convierte en una estructura RECTL y se pasa a IViewObject::D raw.

Valor devuelto

Esta función devuelve S_OK si se ejecuta correctamente. Otros valores posibles son los siguientes.

Código devuelto Descripción
OLE_E_BLANK
No hay datos de los que extraer.
E_ABORT
Se anuló la operación de dibujo.
VIEW_E_DRAW
No hay datos de los que extraer.
OLE_E_INVALIDRECT
El rectángulo no es válido.
E_INVALIDARG
Uno o varios parámetros no son válidos.
E_OUTOFMEMORY
Memoria insuficiente para la operación.
DV_E_NOIVIEWOBJECT
El objeto no admite la interfaz IViewObject .

Comentarios

La función auxiliar OleDraw llama al método QueryInterface para el objeto especificado (pUnk), que solicita una interfaz IViewObject en ese objeto. Después, OleDraw convierte la estructura RECT en una estructura RECTL y llama a IViewObject::D raw de la siguiente manera:

lpViewObj->Draw(dwAspect,-1,0,0,0,hdcDraw,&rectl,0,0,0);

No use esta función para dibujar en un metarchivo porque no especifica el parámetro necesario para dibujar en metarchivos.

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 ole2.h (include Ole2.h)
Library Ole32.lib
Archivo DLL Ole32.dll
Conjunto de API ext-ms-win-com-ole32-l1-1-3 (introducido en Windows 10, versión 10.0.10240)

Consulte también

IViewObject::Draw