次の方法で共有


COleControl::OnGetNaturalExtent

コンテナーの IViewObjectEx::GetNaturalExtent の要求に対する応答として、フレームワークによって呼び出されます。

virtual BOOL OnGetNaturalExtent(
   DWORD dwAspect,
   LONG lindex,
   DVTARGETDEVICE* ptd,
   HDC hicTargetDev,
   DVEXTENTINFO* pExtentInfo,
   LPSIZEL psizel 
);

パラメーター

  • dwAspect
    オブジェクトがどのように表示されるかを指定します。表示内容は、アイコン、スケーリング、表示または印刷されたドキュメントが含まれています。有効値は、列挙型 DVASPECTDVASPECT2から取得されます。

  • lindex
    該当するオブジェクトの部分。現在 -1 だけが有効です。

  • ptd
    DVTARGETDEVICE へのポインターはオブジェクトのサイズを返す必要があるターゲット デバイスの定義を構成します。

  • hicTargetDev
    オブジェクトがデバイスのメトリックを配置し、デバイスの機能をテストする ptd のパラメーターで指定されたターゲット デバイスの情報コンテキストを指定します。ptd が null場合、オブジェクトは hicTargetDev のパラメーターの値を無視します。

  • pExtentInfo
    サイズ設定データを指定する DVEXTENTINFO の構造体へのポインター。DVEXTENTINFO の構造は次のとおりです:

    typedef struct tagExtentInfo

    {

    UINT cb;

    DWORD dwExtentMode;

    SIZEL sizelProposed;

    } DVEXTENTINFO;

    構成要素 dwExtentMode は 2 の値から 1 を使用する場合:

    • DVEXTENT_CONTENT はどの程度コントロールは、コンテンツ (スナップ サイズ) に合わせて必要があるかをたずねる

    • サイズを変更すると、パスDVEXTENT_INTEGRAL は制御するためのサイズを提案します

  • psizel
    コントロールによって返されるサイズ設定データへのポインター。返されるサイズ設定データが調整されていないすべての次元の -1 に設定されます。

戻り値

これが正常にサイズを返すか、または調整した場合は; それ以外の場合は 0。

解説

DVEXTENTINFO の構造の提案されたサイズと範囲のモードに最も近いオブジェクトの表示サイズを返すには、この関数をオーバーライドします。既定の実装では FALSE を返し、サイズの調整をされません。

必要条件

ヘッダー : afxctl.h

参照

関連項目

COleControl クラス

階層図

COleControl::OnGetViewExtent