Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Enables drawing objects more easily. You can use it instead of calling IViewObject::Draw directly.
Syntax
HRESULT OleDraw(
[in] LPUNKNOWN pUnknown,
[in] DWORD dwAspect,
[in] HDC hdcDraw,
[in] LPCRECT lprcBounds
);
Parameters
[in] pUnknown
Pointer to the IUnknown interface on the view object that is to be drawn.
[in] dwAspect
How the object is to be represented. Representations include content, an icon, a thumbnail, or a printed document. Possible values are taken from the DVASPECT enumeration.
[in] hdcDraw
Device context on which to draw. Cannot be a metafile device context.
[in] lprcBounds
Pointer to a RECT structure specifying the rectangle in which the object should be drawn. This parameter is converted to a RECTL structure and passed to IViewObject::Draw.
Return value
This function returns S_OK on success. Other possible values include the following.
Return code | Description |
---|---|
|
No data to draw from. |
|
The draw operation was aborted. |
|
No data to draw from. |
|
The rectangle is invalid. |
|
One or more parameters are invalid. |
|
Insufficient memory for the operation. |
|
The object doesn't support the IViewObject interface. |
Remarks
The OleDraw helper function calls the QueryInterface method for the object specified (pUnk), asking for an IViewObject interface on that object. Then, OleDraw converts the RECT structure to a RECTL structure, and calls IViewObject::Draw as follows:
lpViewObj->Draw(dwAspect,-1,0,0,0,hdcDraw,&rectl,0,0,0);
Do not use this function to draw into a metafile because it does not specify the parameter required for drawing into metafiles.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 2000 Professional [desktop apps only] |
Minimum supported server | Windows 2000 Server [desktop apps only] |
Target Platform | Windows |
Header | ole2.h (include Ole2.h) |
Library | Ole32.lib |
DLL | Ole32.dll |
API set | ext-ms-win-com-ole32-l1-1-3 (introduced in Windows 10, version 10.0.10240) |