COleControl::OnGetNaturalExtent
调用由结构以响应容器的 IViewObjectEx::GetNaturalExtent 请求。
virtual BOOL OnGetNaturalExtent(
DWORD dwAspect,
LONG lindex,
DVTARGETDEVICE* ptd,
HDC hicTargetDev,
DVEXTENTINFO* pExtentInfo,
LPSIZEL psizel
);
参数
dwAspect
指定要如何表示该对象。表示包含目录,图标,缩略图,或者打印的文档。有效值枚举 DVASPECT 或 DVASPECT2中采用。lindex
相关对象的部分。当前只有-1是有效的。ptd
指向 DVTARGETDEVICE 定义对象的大小应返回的目标设备的结构。hicTargetDev
为对象可以提取设备度量和测试设备的功能 ptd 参数指定的目标计算机指定上下文信息。如果 ptd 是 NULL,对象应忽略在 hicTargetDev 参数的值。pExtentInfo
指向 DVEXTENTINFO 指定大小的数据结构。DVEXTENTINFO 结构是:typedef struct tagExtentInfo
{
UINT cb;
DWORD dwExtentMode;
SIZEL sizelProposed;
} DVEXTENTINFO;
结构成员 dwExtentMode 可以采用两个值之一:
DVEXTENT_CONTENT 询问控件多大应处于清除状态以适合内容(转至大小)
DVEXTENT_INTEGRAL,当调整,通过时建议范围控件
psizel
指向控件返回的大小调整数据。该返回的大小调整数据设置为-1不调整的所有维度的。
返回值
非零,则成功返回或调整其大小;否则为0。
备注
重写此函数返回对象的显示范围最接近在 DVEXTENTINFO 结构建议的大小和界限模式。默认实现返回 FALSE 并不会调整为范围。
要求
Header: afxctl.h