COleControl::OnGetNaturalExtent
更新 : 2007 年 11 月
コンテナの 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 以外を返します。それ以外の場合は 0 を返します。
解説
DVEXTENTINFO 構造体の推奨サイズと拡張モードに最も近いオブジェクトの表示サイズを返すには、この関数をオーバーライドします。既定の実装では FALSE を返し、サイズの調整は行われません。
必要条件
ヘッダー : afxctl.h