次の方法で共有


DefDlgProcW 関数 (winuser.h)

既定のダイアログ ボックス ウィンドウ プロシージャを呼び出して、プライベート ウィンドウ クラスを持つダイアログ ボックスが処理しないウィンドウ メッセージの既定の処理を提供します。

構文

LRESULT LRESULT DefDlgProcW(
  [in] HWND   hDlg,
  [in] UINT   Msg,
  [in] WPARAM wParam,
  [in] LPARAM lParam
);

パラメーター

[in] hDlg

型: HWND

ダイアログ ボックスを識別するハンドル。

[in] Msg

型: UINT

メッセージ。

[in] wParam

型: WPARAM

追加のメッセージ固有情報。

[in] lParam

型: LPARAM

追加のメッセージ固有情報。

戻り値

型: LRESULT

戻り値は、メッセージ処理の結果を指定し、送信されたメッセージに依存します。

解説

DefDlgProc 関数は、ダイアログ ボックスの定義済みクラスのウィンドウ プロシージャです。 このプロシージャは、ダイアログ ボックス プロシージャにメッセージを転送し、ダイアログ ボックス プロシージャが FALSE として返すメッセージに対して既定の処理を実行することで、ダイアログ ボックスの内部処理を提供します。 カスタム ダイアログ ボックスのカスタム ウィンドウ プロシージャを作成するアプリケーションでは、既定のメッセージ処理を実行するために DefWindowProc 関数ではなく DefDlgProc を使用することがよくあります。

アプリケーションは、 WNDCLASS 構造体に適切な情報を入力し、クラスを RegisterClass 関数に登録することで、カスタム ダイアログ ボックス クラスを作成します。 一部のアプリケーションでは、定義済みのダイアログ ボックスの名前を指定して 、GetClassInfo 関数を使用して構造体を埋めます。 このような場合、アプリケーションは登録する前に、少なくとも lpszClassName メンバーを変更します。 いずれの場合も、カスタム ダイアログ ボックス クラスの WNDCLASScbWndExtra メンバーは、少なくとも DLGWINDOWEXTRA に設定する必要があります。

DefDlgProc 関数は、ダイアログ ボックス プロシージャで呼び出さないでください。これにより、再帰的な実行が行われます。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー winuser.h (Windows.h を含む)
Library User32.lib
[DLL] User32.dll

関連項目

概念

DefWindowProc

ダイアログ ボックス

GetClassInfo

リファレンス

RegisterClass

WNDCLASS