OleDraw 函数 (ole2.h)

更轻松地启用绘图对象。 可以使用它而不是直接调用 IViewObject::D raw

语法

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

参数

[in] pUnknown

指向要绘制的视图对象上的 IUnknown 接口的指针。

[in] dwAspect

对象的表示方式。 表示形式包括内容、图标、缩略图或打印的文档。 可能的值取自 DVASPECT 枚举。

[in] hdcDraw

要进行绘制的设备上下文。 不能是图元文件设备上下文。

[in] lprcBounds

指向 RECT 结构的指针,该结构指定应在其中绘制对象的矩形。 此参数将转换为 RECTL 结构并传递给 IViewObject::D raw

返回值

此函数在成功时返回S_OK。 其他可能的值包括以下内容。

返回代码 说明
OLE_E_BLANK
没有要从中提取的数据。
E_ABORT
绘制操作已中止。
VIEW_E_DRAW
没有要从中提取的数据。
OLE_E_INVALIDRECT
矩形无效。
E_INVALIDARG
一个或多个参数无效。
E_OUTOFMEMORY
操作的内存不足。
DV_E_NOIVIEWOBJECT
对象不支持 IViewObject 接口。

注解

OleDraw 帮助程序函数为 (pUnk) 指定的对象调用 QueryInterface 方法,要求在该对象上提供 IViewObject 接口。 然后, OleDrawRECT 结构转换为 RECTL 结构,并调用 IViewObject::D raw ,如下所示:

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

请勿使用此函数绘制到图元文件,因为它未指定绘制到图元文件所需的参数。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 ole2.h (包括 Ole2.h)
Library Ole32.lib
DLL Ole32.dll
API 集 ext-ms-win-com-ole32-l1-1-3 (在 Windows 10 版本 10.0.10240 中引入)

另请参阅

IViewObject::Draw