次の方法で共有


プロパティ ページの実装

プロパティ ページは IPropertyPage2IPropertyPage またはインターフェイスを実装する COM オブジェクトです。ATL は クラスの追加]ダイアログ ボックス[ATL プロパティ ページ ウィザード] によってプロパティ ページの実装をサポートします。

プロパティ ページで、ATL を使用して作成するには:

  • ATL ダイナミック リンク ライブラリの (DLL) サーバー プロジェクトを作成または開きます。

  • クラスのダイアログ ボックスを追加します。 を開き、**[ATL プロパティ ページ]**を選択します。

  • (ユーザー インターフェイスがあるため)、プロパティ ページがマルチスレッド アパートメントであることを確認します。

  • ページ内および関連付けられるドキュメントのタイトル、説明 (文字列)、およびヘルプ ファイルを設定します。

  • 、プロパティ ページのユーザー インターフェイスとして機能するに生成されたダイアログ リソースにコントロールを追加します。

  • 検証を実行する場合、ページのサイトを更新するには、のページに関連付けられているオブジェクトを更新するように、ページのユーザー インターフェイスの変更に応答します。特に、プロパティ ページを変更するときに、呼び出し IPropertyPageImpl::SetDirty

  • オプションとして、次のガイドラインを参考にして IPropertyPageImpl メソッドをオーバーライドします。

    IPropertyPageImpl のメソッド

    …する場合のオーバーライド

    メモ

    SetObjects

    サポートするインターフェイスと、ページに渡されるオブジェクトの数の基本的な正気のチェックを実行します。

    基本クラスの実装を呼び出す前に独自のコードを実行します。設定オブジェクトが予測に準拠しない場合、呼び出しはできるだけ早く失敗します。

    [ライセンス認証]

    ページのユーザー インターフェイスを初期化します。たとえば、オブジェクトから現在のプロパティの値を持つダイアログ コントロールを設定するか、コントロールを動的に作成することも、他の初期化を実行します)。

    これらを更新する前に、基本クラスにダイアログ ウィンドウを作成する前に、すべてのコントロールがあるように、コードの前に、基本クラスの実装を呼び出します。

    [適用]

    プロパティ設定を検証し、オブジェクトを更新します。

    トレースとは何もしないため、呼び出し基本クラスの実装を呼び出す必要はありません。

    非アクティブ化

    関連ウィンドウの項目を削除します。

    基本クラスの実装は、プロパティ ページを表すダイアログ ボックスを破棄します。ダイアログ ボックスが破棄される前に、クリーンアップする必要がある場合は、基本クラスを呼び出す前にコードを追加する必要があります。

例のプロパティ ページの実装については、例: プロパティ ページの実装を参照してください。

[!メモ]

、プロパティ ページの ActiveX コントロールをホストする場合は、ウィザード生成されたクラスの派生を変更する必要があります。基本クラスのリストに CAxDialogImplCYourClassCDialogImplCYourClass を置き換えます。

参照

概念

ATL COM プロパティ ページ

ATLPages サンプル