次の方法で共有


CreateDialogParamW 関数 (winuser.h)

ダイアログ ボックス テンプレート リソースからモードレス ダイアログ ボックスを作成します。 この関数は、ダイアログ ボックスを表示する前に、WM_INITDIALOG メッセージの lParam パラメーターとして、アプリケーション定義の値をダイアログ ボックス プロシージャに渡します。 アプリケーションでは、この値を使用してダイアログ ボックス コントロールを初期化できます。

構文

HWND CreateDialogParamW(
  [in, optional] HINSTANCE hInstance,
  [in]           LPCWSTR   lpTemplateName,
  [in, optional] HWND      hWndParent,
  [in, optional] DLGPROC   lpDialogFunc,
  [in]           LPARAM    dwInitParam
);

パラメーター

[in, optional] hInstance

型: HINSTANCE

ダイアログ ボックス テンプレートを含むモジュールのハンドル。 このパラメーターが NULL の場合は、現在の実行可能ファイルが使用されます。

[in] lpTemplateName

型: LPCTSTR

ダイアログ ボックス テンプレート。 このパラメーターは、ダイアログ ボックス テンプレートの名前を指定する null で終わる文字列へのポインターか、ダイアログ ボックス テンプレートのリソース識別子を指定する整数値のいずれかです。 パラメーターでリソース識別子を指定する場合、上位ワードは 0 で、下位ワードには識別子を含める必要があります。 MAKEINTRESOURCE マクロを使用して、この値を作成できます。

[in, optional] hWndParent

型: HWND

ダイアログ ボックスを所有するウィンドウへのハンドル。

[in, optional] lpDialogFunc

型: DLGPROC

ダイアログ ボックス プロシージャへのポインター。 ダイアログ ボックスプロシージャの詳細については、「DialogProcを参照してください。

[in] dwInitParam

型: LPARAM

WM_INITDIALOG メッセージの lParam パラメーターのダイアログ ボックス プロシージャに渡す値。

戻り値

型: HWND

関数が成功した場合、戻り値はダイアログ ボックスのウィンドウ ハンドルです。

関数が失敗した場合、戻り値は NULL。 拡張エラー情報を取得するには、GetLastError呼び出します。

備考

CreateDialogParam 関数は、CreateWindowEx 関数を使用してダイアログ ボックスを作成します。 CreateDialogParam WM_INITDIALOG メッセージ (およびテンプレートで DS_SETFONT またはDS_SHELLFONTスタイルが指定されている場合は WM_SETFONT メッセージ) をダイアログ ボックス プロシージャに送信します。 テンプレートで WS_VISIBLE スタイルが指定されている場合、この関数はダイアログ ボックスを表示します。 最後に、CreateDialogParam ダイアログ ボックスのウィンドウ ハンドルを返します。

CreateDialogParam 戻ると、ShowWindow 関数を使用してダイアログ ボックスが表示されます (まだ表示されていない場合)。 アプリケーションは、DestroyWindow 関数を使用してダイアログ ボックスを破棄します。 キーボード ナビゲーションやその他のダイアログ ボックス機能をサポートするには、ダイアログ ボックスのメッセージ ループで IsDialogMessage 関数を呼び出す必要があります。

手記

winuser.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして CreateDialogParam を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー winuser.h (Windows.h を含む)
ライブラリ User32.lib
DLL User32.dll
API セットの ext-ms-win-ntuser-dialogbox-l1-1-0 (Windows 8 で導入)

関連項目

概念

CreateDialog の

CreateDialogIndirect の

CreateDialogIndirectParam の

CreateWindowEx の

DestroyWindow の

ダイアログ ボックス

DialogProc

IsDialogMessage の

MAKEINTRESOURCE を する

リファレンス

ShowWindow の

WM_INITDIALOG

WM_SETFONT