CAxDialogImpl クラス
このクラスは、ActiveX コントロールをホストするダイアログ ボックス (モーダルまたはモードレス) を実装します。
template <
class T,
class TBase = CWindow
>
class ATL_NO_VTABLE CAxDialogImpl :
public CDialogImplBaseT< TBase >
パラメーター
T
CAxDialogImpl の派生クラス。TBase
CDialogImplBaseT の基本ウィンドウ クラス。
解説
CAxDialogImpl では、モーダル ダイアログ ボックスまたはモードレス ダイアログ ボックスを作成できます。 CAxDialogImpl にはダイアログ ボックス プロシージャが用意されています。このプロシージャは、既定のメッセージ マップを使用してメッセージを適切なハンドラーに送ります。
CAxDialogImpl は CDialogImplBaseT の派生クラスで、CDialogImplBaseT は TBase (既定では CWindow) および CMessageMap の派生クラスです。
クラスには、ダイアログ テンプレート リソース ID を示す IDD メンバーを定義する必要があります。 たとえば、Add Class ダイアログ ボックスを使用する ATL ダイアログ オブジェクトを追加すると、次の行が自動的にクラスに追加されます。
enum { IDD = IDD_MYDLG };
ここでの、MyDialog は ATL ダイアログ ウィザードで入力された短い名前です。
詳細については、「ダイアログ ボックスの実装」を参照してください。
CAxDialogImpl で作成されたモーダル ダイアログ ボックスの ActiveX コントロールは、アクセラレータ キーをサポートしません。 CAxDialogImpl で作成されたダイアログ ボックスでアクセラレータ キーをサポートするには、モードレス ダイアログ ボックスを作成し、独自のメッセージ ループを使用して、キューからメッセージを取得した後に CAxDialogImpl::IsDialogMessage でアクセラレータ キーを処理します。
CAxDialogImpl の詳細については、「ATL コントロール コンテインメント : Q & A 集」を参照してください。
必要条件
**ヘッダー:**atlwin.h