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 コントロールを使用する方法の詳細については、次の記事を参照してください。
継承階層
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 クラス