次の方法で共有


COlePropertyPage クラス

ダイアログ ボックスのようなグラフィカルなインターフェイスでカスタム コントロールのプロパティを表示します。

構文

class AFX_NOVTABLE COlePropertyPage : public CDialog

メンバー

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

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

パブリック メソッド

名前 説明
COlePropertyPage::GetControlStatus ユーザーがコントロールの値を変更したかどうかを示します。
COlePropertyPage::GetObjectArray プロパティ ページによって編集されているオブジェクトの配列を返します。
COlePropertyPage::GetPageSite プロパティ ページの IPropertyPageSite インターフェイスへのポインターを返します。
COlePropertyPage::IgnoreApply [適用] ボタンを有効にしないコントロールを指定します。
COlePropertyPage::IsModified ユーザーがプロパティ ページを変更したかどうかを示します。
COlePropertyPage::OnEditProperty ユーザーがプロパティを編集するときにフレームワークによって呼び出されます。
COlePropertyPage::OnHelp ユーザーがヘルプを呼び出すときにフレームワークによって呼び出されます。
COlePropertyPage::OnInitDialog プロパティ ページが初期化されるときにフレームワークによって呼び出されます。
COlePropertyPage::OnObjectsChanged 新しいプロパティを持つ別の OLE コントロールが選択されたときに、フレームワークによって呼び出されます。
COlePropertyPage::OnSetPageSite プロパティ フレームがページのサイトを提供するときにフレームワークによって呼び出されます。
COlePropertyPage::SetControlStatus ユーザーがコントロールの値を変更したかどうかを示すフラグを設定します。
COlePropertyPage::SetDialogResource プロパティ ページのダイアログ リソースを設定します。
COlePropertyPage::SetHelpInfo プロパティ ページの簡単なヘルプ テキスト、ヘルプ ファイルの名前、およびヘルプ コンテキストを設定します。
COlePropertyPage::SetModifiedFlag ユーザーがプロパティ ページを変更したかどうかを示すフラグを設定します。
COlePropertyPage::SetPageName プロパティ ページの名前 (キャプション) を設定します。

解説

たとえば、プロパティ ページには、ユーザーがコントロールのキャプション プロパティを表示および変更できるようにする編集コントロールが含まれている場合があります。

カスタム コントロールまたはストック コントロールの各プロパティには、コントロールのユーザーが現在のプロパティ値を表示し、必要に応じてその値を変更できるようにするダイアログ コントロールを持つことができます。

COlePropertyPageの使用方法の詳細については、「ActiveX コントロール: プロパティ ページ」を参照してください。

継承階層

CObject

CCmdTarget

CWnd

CDialog

COlePropertyPage

要件

Header: afxctl.h

COlePropertyPage::COlePropertyPage

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

COlePropertyPage(
    UINT idDlg,
    UINT idCaption);

パラメーター

idDlg
ダイアログ テンプレートのリソース ID。

idCaption
プロパティ ページのキャプションのリソース ID。

解説

COlePropertyPageのサブクラスを実装する場合、サブクラスのコンストラクターは、COlePropertyPage コンストラクターを使用して、プロパティ ページの基になっているダイアログ テンプレート リソースとそのキャプションを含む文字列リソースを識別する必要があります。

COlePropertyPage::GetControlStatus

指定したリソース ID を使用して、ユーザーがプロパティ ページ コントロールの値を変更したかどうかを判断します。

BOOL GetControlStatus(UINT nID);

パラメーター

nID
プロパティ ページ コントロールのリソース ID。

戻り値

コントロール値が変更された場合は TRUE。それ以外の場合は FALSE。

COlePropertyPage::GetObjectArray

プロパティ ページによって編集されているオブジェクトの配列を返します。

LPDISPATCH* GetObjectArray(ULONG* pnObjects);

パラメーター

pnObjects
ページによって編集されているオブジェクトの数を受け取る符号なし長整数へのポインター。

戻り値

プロパティ ページ上の各コントロールのプロパティにアクセスするために使用される、 IDispatch ポインターの配列へのポインター。 呼び出し元は、これらのインターフェイス ポインターを解放しないでください。

解説

各プロパティ ページ オブジェクトは、ページによって編集されているオブジェクトの IDispatch インターフェイスへのポインターの配列を保持します。 この関数は、 pnObjects 引数をその配列内の要素数に設定し、配列の最初の要素へのポインターを返します。

COlePropertyPage::GetPageSite

プロパティ ページの IPropertyPageSite インターフェイスへのポインターを取得します。

LPPROPERTYPAGESITE GetPageSite();

戻り値

プロパティ ページの IPropertyPageSite インターフェイスへのポインター。

解説

コントロールとコンテナーは連携して、ユーザーがコントロールのプロパティを参照および編集できるようにします。 このコントロールはプロパティ ページを提供します。各ページは OLE オブジェクトであり、ユーザーは関連するプロパティ セットを編集できます。 コンテナーには、プロパティ ページを表示するプロパティ フレームが用意されています。 各ページについて、プロパティ フレームには、 IPropertyPageSite インターフェイスをサポートするページ サイトが用意されています。

COlePropertyPage::IgnoreApply

[適用] ボタンを有効にしないコントロールを指定します。

void IgnoreApply(UINT nID);

パラメーター

nID
無視するコントロールの ID。

解説

プロパティ ページの [適用] ボタンは、プロパティ ページ コントロールの値が変更された場合にのみ有効になります。 この関数を使用して、値が変更されたときに [適用] ボタンを有効にしないコントロールを指定します。

COlePropertyPage::IsModified

ユーザーがプロパティ ページの値を変更したかどうかを判断します。

BOOL IsModified();

戻り値

プロパティ ページが変更されている場合は TRUE。

COlePropertyPage::OnEditProperty

フレームワークは、特定のプロパティを編集するときにこの関数を呼び出します。

virtual BOOL OnEditProperty(DISPID dispid);

パラメーター

dispid
編集中のプロパティのディスパッチ ID。

戻り値

既定の実装では FALSE が返されます。 この関数のオーバーライドは TRUE を返す必要があります。

解説

これをオーバーライドして、ページ上の適切なコントロールにフォーカスを設定できます。 既定の実装では何も行われないため、FALSE が返されます。

COlePropertyPage::OnHelp

ユーザーがオンライン ヘルプを要求すると、フレームワークはこの関数を呼び出します。

virtual BOOL OnHelp(LPCTSTR lpszHelpDir);

パラメーター

lpszHelpDir
プロパティ ページのヘルプ ファイルを含むディレクトリ。

戻り値

既定の実装では FALSE が返されます。

解説

ユーザーがヘルプにアクセスするときにプロパティ ページで特別なアクションを実行する必要がある場合は、オーバーライドします。 既定の実装では何も行われないため、FALSE が返されます。これにより、フレームワークで WinHelp を呼び出すように指示されます。

COlePropertyPage::OnInitDialog

フレームワークは、プロパティ ページのダイアログが初期化されるときに、この関数を呼び出します。

virtual BOOL OnInitDialog();

戻り値

既定の実装では FALSE が返されます。

解説

ダイアログの初期化時に特別なアクションが必要な場合は、オーバーライドします。 既定の実装は CDialog::OnInitDialog を呼び出し、FALSE を返します。

COlePropertyPage::OnObjectsChanged

新しいプロパティを持つ別の OLE コントロールが選択されたときに、フレームワークによって呼び出されます。

virtual void OnObjectsChanged();

解説

開発環境で OLE コントロールのプロパティを表示する場合は、モードレス ダイアログ ボックスを使用してプロパティ ページを表示します。 別のコントロールが選択されている場合は、新しいプロパティ セットに対して別のプロパティ ページ セットを表示する必要があります。 フレームワークは、この関数を呼び出して、プロパティ ページに変更を通知します。

このアクションの通知を受け取り、特別なアクションを実行するには、この関数をオーバーライドします。

COlePropertyPage::OnSetPageSite

フレームワークは、プロパティ フレームがプロパティ ページのページ サイトを提供するときに、この関数を呼び出します。

virtual void OnSetPageSite();

解説

既定の実装では、ページのキャプションを読み込み、ダイアログ リソースからページのサイズを決定しようとします。 プロパティ ページで追加のアクションが必要な場合は、この関数をオーバーライドします。オーバーライドは基底クラスの実装を呼び出す必要があります。

COlePropertyPage::SetControlStatus

プロパティ ページ コントロールの状態を変更します。

BOOL SetControlStatus(
    UINT nID,
    BOOL bDirty);

パラメーター

nID
プロパティ ページ コントロールの ID を格納します。

bDirty
プロパティ ページのフィールドが変更されているかどうかを指定します。 フィールドが変更されている場合は TRUE、変更されていない場合は FALSE に設定します。

戻り値

指定したコントロールが設定されている場合は TRUE。それ以外の場合は FALSE。

解説

プロパティ ページが閉じているか、[適用] ボタンが選択されている場合、プロパティ ページ コントロールの状態がダーティである場合、コントロールのプロパティは適切な値で更新されます。

COlePropertyPage::SetDialogResource

プロパティ ページのダイアログ リソースを設定します。

void SetDialogResource(HGLOBAL hDialog);

パラメーター

hDialog
プロパティ ページのダイアログ リソースへのハンドル。

COlePropertyPage::SetHelpInfo

プロパティ ページのヒント情報、ヘルプ ファイル名、およびヘルプ コンテキストを指定します。

void SetHelpInfo(
    LPCTSTR lpszDocString,
    LPCTSTR lpszHelpFile = NULL,
    DWORD dwHelpContext = 0);

パラメーター

lpszDocString
ステータス バーまたはその他の場所に表示するための簡単なヘルプ情報を含む文字列。

lpszHelpFile
プロパティ ページのヘルプ ファイルの名前。

dwHelpContext
プロパティ ページのヘルプ コンテキスト。

COlePropertyPage::SetModifiedFlag

ユーザーがプロパティ ページを変更したかどうかを示します。

void SetModifiedFlag(BOOL bModified = TRUE);

パラメーター

bModified
プロパティ ページの変更されたフラグの新しい値を指定します。

COlePropertyPage::SetPageName

プロパティ ページの名前を設定します。通常、プロパティ フレームはページのタブに表示されます。

void SetPageName(LPCTSTR lpszPageName);

パラメーター

lpszPageName
プロパティ ページの名前を含む文字列へのポインター。

関連項目

MFC サンプル CIRC3
MFC サンプル TESTHELP
CDialog クラス
階層図
CDialog クラス