COleDataSource::CacheData

更新 : 2007 年 11 月

データ転送操作のときに提供されるデータの形式を指定します。

void CacheData(
   CLIPFORMAT cfFormat,
   LPSTGMEDIUM lpStgMedium,
   LPFORMATETC lpFormatEtc = NULL 
);

パラメータ

  • cfFormat
    提供されるデータのクリップボード形式。このパラメータには、定義済みのクリップボード形式、または Windows ネイティブの RegisterClipboardFormat 関数が返す値を指定できます。

  • lpStgMedium
    指定された形式のデータを保持する STGMEDIUM 構造体へのポインタ。

  • lpFormatEtc
    提供されるデータの形式を示す FORMATETC 構造体へのポインタ。cfFormat で指定されたクリップボード形式に追加の形式情報を指定するときは、このパラメータを指定します。パラメータが NULL のときは、FORMATETC 構造体のほかのフィールドには既定の値が使われます。

解説

この関数は、即時レンダリングを使ってデータを提供するので、この関数にデータを渡す必要があります。このデータは必要になるまでキャッシュされます。

STGMEDIUM 構造体を使ってデータを渡します。渡すデータの量が HGLOBAL を使っても十分なほど小さければ、CacheGlobalData メンバ関数を使うこともできます。

CacheData の呼び出し後は、lpFormatEtc のメンバ ptd と lpStgMedium の内容は、呼び出し元ではなく、データ オブジェクトが所有権を持ちます。

遅延レンダリングを使うには、DelayRenderData メンバ関数または DelayRenderFileData メンバ関数を呼び出します。MFC で処理される遅延レンダリングの詳細については、「データ オブジェクトとデータ ソース : 操作」を参照してください。

詳細については、Windows SDK の STGMEDIUM 構造体と FORMATETC 構造体の説明を参照してください。

詳細については、Windows SDK の「RegisterClipboardFormat」を参照してください。

必要条件

ヘッダー : afxole.h

参照

参照

COleDataSource クラス

階層図

COleDataSource::CacheGlobalData

COleDataSource::DelayRenderData

COleDataSource::DelayRenderFileData

COleDataSource::SetClipboard

COleDataSource::DoDragDrop

その他の技術情報

COleDataSource のメンバ