次の方法で共有


CAxDialogImpl クラス

このクラスは、ActiveX コントロールをホストするダイアログ ボックス (モーダルまたはモードレス) を実装します。

重要

このクラスおよびメンバーは、Windows のランタイムで実行するアプリケーションで使用することはできません。

template < 
class T, 
class TBase= CWindow 
> 
class ATL_NO_VTABLE CAxDialogImpl : 
public CDialogImplBaseT< TBase>

パラメーター

  • T
    CAxDialogImplから派生したクラス。

  • TBase
    CDialogImplBaseTウィンドウの基本クラス。

メンバー

パブリック メソッド

名前

説明

CAxDialogImpl::AdviseSinkMap

アドバイズするために、このメソッドまたは unadvise をオブジェクト シンク マップのイベント マップのすべてのエントリを呼び出します。

CAxDialogImpl::Create

モードレス ダイアログ ボックスを作成するには、このメソッドを呼び出します。

CAxDialogImpl::DestroyWindow

モードレス ダイアログ ボックスを破棄するには、このメソッドを呼び出します。

CAxDialogImpl::DoModal

モーダル ダイアログ ボックスを作成するには、このメソッドを呼び出します。

CAxDialogImpl::EndDialog

モーダル ダイアログ ボックスを破棄するには、このメソッドを呼び出します。

CAxDialogImpl::GetDialogProc

DialogProc のコールバック関数へのポインターを取得するときにこのメソッドを呼び出します。

CAxDialogImpl::GetIDD

ダイアログ テンプレート リソース id を取得するときにこのメソッドを呼び出します。

CAxDialogImpl::IsDialogMessage

メッセージがこのダイアログ ボックスを対象にしている場合は、メッセージを処理するかどうかを判定するためにこのメソッドを呼び出します。

プロテクト データ メンバー

名前

説明

CAxDialogImpl::m_bModal

ダイアログ ボックスをモーダル デバッグ ビルドの場合にのみ、true に設定されている変数。

解説

CAxDialogImpl はモーダルまたはモードレス ダイアログ ボックスを作成できるようにします。 CAxDialogImpl は、適切なハンドラーにメッセージを指定するには、既定のメッセージ マップを使用してダイアログ ボックスの手順を提供します。

CAxDialogImplCDialogImplBaseTから派生します TBase (既定では、CWindow) と CMessageMapから派生します。

このクラスは、ダイアログ テンプレート リソース id を指定する IDD のメンバーを定義する必要があります たとえば、*** クラス追加 *** のダイアログ ボックスを使用して ATL ダイアログ オブジェクトを追加するには、クラスに自動的に次の行を追加します:

enum { IDD = IDD_MYDLG };

MyDialog が ATL ダイアログ ウィザードに入力した *** 短い名前 *** です。

詳細については、ダイアログ ボックスの実行 を参照してください。

CAxDialogImpl で作成されたモーダル ダイアログ ボックスの ActiveX コントロールがアクセラレータ キーをサポートしないことに注意してください。 CAxDialogImplで作成されるダイアログ ボックスのアクセラレータ キーをサポートするには、モードレス ダイアログ ボックスを作成し、キューからメッセージを処理するアクセラレータ キーを取得した後、独自のメッセージ ループを使用して、CAxDialogImpl::IsDialogMessage を使用します。

CAxDialogImplの詳細については、ATL コントロール コンテインメントの FAQを参照してください。

継承階層

CMessageMap

TBase

CWindowImplRoot

CDialogImplBaseT

CAxDialogImpl

必要条件

Header: atlwin.h

参照

関連項目

CDialogImpl クラス

その他の技術情報

ATL クラスの概要