次の方法で共有


CDataPathProperty クラス

非同期で読み込める OLE コントロール プロパティを実装します。

構文

class CDataPathProperty : public CAsyncMonikerFile

メンバー

パブリック コンストラクター

名前 説明
CDataPathProperty::CDataPathProperty CDataPathProperty オブジェクトを構築します。

パブリック メソッド

名前 説明
CDataPathProperty::GetControl CDataPathProperty オブジェクトに関連付けられている非同期 OLE コントロールを取得します。
CDataPathProperty::GetPath プロパティのパス名を取得します。
CDataPathProperty::Open 関連付けられている ActiveX (OLE) コントロールの非同期プロパティの読み込みを開始します。
CDataPathProperty::ResetData CAsyncMonikerFile::OnDataAvailableを呼び出して、コントロールのプロパティが変更されたことをコンテナーに通知します。
CDataPathProperty::SetControl プロパティに関連付けられている非同期 ActiveX (OLE) コントロールを設定します。
CDataPathProperty::SetPath プロパティのパス名を設定します。

解説

非同期のプロパティは、同期の開始後に読み込まれます。

CDataPathPropertyクラスは、CAysncMonikerFileから派生します。 OLE コントロールに非同期プロパティを実装するには、 CDataPathPropertyからクラスを派生させ、 OnDataAvailableをオーバーライドします。

インターネット アプリケーションで非同期モニカーと ActiveX コントロールを使用する方法の詳細については、次の記事を参照してください。

継承階層

CObject

CFile

COleStreamFile

CMonikerFile

CAsyncMonikerFile

CDataPathProperty

要件

Header: afxctl.h

CDataPathProperty::CDataPathProperty

CDataPathProperty オブジェクトを構築します。

CDataPathProperty(COleControl* pControl = NULL);
CDataPathProperty(LPCTSTR lpszPath, COleControl* pControl = NULL);

パラメーター

pControl
この CDataPathProperty オブジェクトに関連付ける OLE コントロール オブジェクトへのポインター。

lpszPath
絶対パスまたは相対パスは、プロパティの実際の絶対位置を参照する非同期モニカーを作成するために使用されます。 CDataPathProperty では、ファイル名ではなく URL が使用されます。 ファイルの CDataPathProperty オブジェクトが必要な場合は、パスの前に file:// を付加します。

解説

pControl が指すCOleControl オブジェクトは、Openによって使用され、派生クラスによって取得されます。 pControl が NULL の場合、Openで使用されるコントロールはSetControlで設定する必要があります。 lpszPath が NULL の場合は、Open経由でパスを渡すか、SetPathで設定できます。

CDataPathProperty::GetControl

このメンバー関数を呼び出して、CDataPathProperty オブジェクトに関連付けられているCOleControl オブジェクトを取得します。

COleControl* GetControl();

戻り値

CDataPathProperty オブジェクトに関連付けられている OLE コントロールへのポインターを返します。 制御が関連付けられていない場合は NULL。

CDataPathProperty::GetPath

このメンバー関数を呼び出して、パスを取得し、 CDataPathProperty オブジェクトが構築されたとき、または Open で指定されたとき、または以前の SetPath メンバー関数の呼び出しで指定されたときに設定します。

CString GetPath() const;

戻り値

プロパティ自体のパス名を返します。 パスが指定されていない場合は空にすることができます。

CDataPathProperty::Open

関連付けられているコントロールの非同期プロパティの読み込みを開始するには、このメンバー関数を呼び出します。

virtual BOOL Open(
    COleControl* pControl,
    CFileException* pError = NULL);

virtual BOOL Open(
    LPCTSTR lpszPath,
    COleControl* pControl,
    CFileException* pError = NULL);

virtual BOOL Open(
    LPCTSTR lpszPath,
    CFileException* pError = NULL);

virtual BOOL Open(CFileException* pError = NULL);

パラメーター

pControl
この CDataPathProperty オブジェクトに関連付ける OLE コントロール オブジェクトへのポインター。

pError
ファイル例外へのポインター。 エラーが発生した場合は、原因に設定されます。

lpszPath
絶対パスまたは相対パスは、プロパティの実際の絶対位置を参照する非同期モニカーを作成するために使用されます。 CDataPathProperty では、ファイル名ではなく URL が使用されます。 ファイルの CDataPathProperty オブジェクトが必要な場合は、パスの前に file:// を付加します。

戻り値

正常終了した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

この関数は、コントロールから IBindHost インターフェイスを取得しようとします。

パスなしで Open を呼び出す前に、プロパティのパスの値を設定する必要があります。 これは、オブジェクトが構築されるときに、または SetPath メンバー関数を呼び出すことによって行うことができます。

コントロールなしで Open を呼び出す前に、ActiveX コントロール (旧称 OLE コントロール) をオブジェクトに関連付けることができます。 これは、オブジェクトが構築されるときに、または SetControlを呼び出すことによって行うことができます。

CAsyncMonikerFile::Open のすべてのオーバーロードもCDataPathPropertyから使用できます。

CDataPathProperty::ResetData

この関数を呼び出して、コントロールのプロパティが変更されたことをコンテナーに通知する CAsyncMonikerFile::OnDataAvailable を取得し、非同期に読み込まれたすべての情報は役に立たなくなります。

virtual void ResetData();

解説

開くを再起動する必要があります。 派生クラスは、さまざまな既定値に対してこの関数をオーバーライドできます。

CDataPathProperty::SetControl

非同期 OLE コントロールを CDataPathProperty オブジェクトに関連付けるには、このメンバー関数を呼び出します。

void SetControl(COleControl* pControl);

パラメーター

pControl
プロパティに関連付ける非同期 OLE コントロールへのポインター。

CDataPathProperty::SetPath

このメンバー関数を呼び出して、プロパティのパス名を設定します。

void SetPath(LPCTSTR lpszPath);

パラメーター

lpszPath
非同期に読み込まれるプロパティへの絶対パスまたは相対パス。 CDataPathProperty では、ファイル名ではなく URL が使用されます。 ファイルの CDataPathProperty オブジェクトが必要な場合は、パスの前に file:// を付加します。

関連項目

MFC サンプル イメージ
CAsyncMonikerFile クラス
階層図
CAsyncMonikerFile クラス