次の方法で共有


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

参照

参照

COleControl クラス

階層図

COleControl::OnGetViewExtent

その他の技術情報

COleControl のメンバ