CreateDialogW マクロ (winuser.h)
ダイアログ ボックス テンプレート リソースからモードレス ダイアログ ボックスを作成します。 CreateDialog マクロは CreateDialogParam 関数を使用します。
構文
void CreateDialogW(
[in, optional] hInstance,
[in] lpName,
[in, optional] hWndParent,
[in, optional] lpDialogFunc
);
パラメーター
[in, optional] hInstance
種類: HINSTANCE
ダイアログ ボックス テンプレートを含むモジュールのハンドル。 このパラメーターが NULL の場合は、現在の実行可能ファイルが使用されます。
[in] lpName
種類: LPCTSTR
ダイアログ ボックス テンプレート。 このパラメーターは、ダイアログ ボックス テンプレートの名前を指定する null 終端文字列へのポインター、またはダイアログ ボックス テンプレートのリソース識別子を指定する整数値のいずれかです。 このパラメーターにリソース識別子を指定する場合は、その上位ワードを 0 にして、下位ワードに識別子を含める必要があります。 この値は、MAKEINTRESOURCE マクロを使用して作成できます。
[in, optional] hWndParent
型: HWND
ダイアログ ボックスを所有するウィンドウへのハンドル。
[in, optional] lpDialogFunc
種類: DLGPROC
ダイアログ ボックス プロシージャへのポインター。 ダイアログ ボックス プロシージャの詳細については、DialogProc に関するページをご覧ください。
戻り値
なし
解説
CreateDialog 関数は、CreateWindowEx 関数を使用してダイアログ ボックスを作成します。 その後、CreateDialog は 、WM_INITDIALOG メッセージ (およびテンプレート でDS_SETFONT または DS_SHELLFONT スタイルが指定されている場合は WM_SETFONT メッセージ) をダイアログ ボックス プロシージャに送信します。 テンプレートで WS_VISIBLE スタイルが指定されている場合、この関数はダイアログ ボックスを表示します。 最後に、 CreateDialog はウィンドウ ハンドルをダイアログ ボックスに返します。
CreateDialog が返されると、ShowWindow 関数を使用してダイアログ ボックス (まだ表示されていない場合) が表示されます。 アプリケーションは DestroyWindow 関数を使用してダイアログ ボックスを破棄します。 キーボード ナビゲーションやその他のダイアログ ボックス機能をサポートするには、ダイアログ ボックスのメッセージ ループで IsDialogMessage 関数を呼び出す必要があります。
例
例については、「 モードレス ダイアログ ボックスの作成」を参照してください。
注意
winuser.h ヘッダーは、CreateDialog をエイリアスとして定義し、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | winuser.h (Windows.h を含む) |
Library | User32.lib |
[DLL] | User32.dll |
関連項目
概念
リファレンス