IsDialogMessageW 関数 (winuser.h)
メッセージが指定したダイアログ ボックスを対象としているかどうかを判断し、メッセージを処理する場合は処理します。
構文
BOOL IsDialogMessageW(
[in] HWND hDlg,
[in] LPMSG lpMsg
);
パラメーター
[in] hDlg
型: HWND
ダイアログ ボックスを識別するハンドル。
[in] lpMsg
種類: LPMSG
確認するメッセージを含む MSG 構造体へのポインター。
戻り値
種類: BOOL
メッセージが処理されている場合、戻り値は 0 以外です。
メッセージが処理されていない場合、戻り値は 0 です。
注釈
IsDialogMessage 関数はモードレス ダイアログ ボックスを対象としていますが、コントロールを含む任意のウィンドウで使用できるため、ウィンドウでダイアログ ボックスで使用されているものと同じキーボード選択を提供できます。
IsDialogMessage は、メッセージを処理するときに、キーボード メッセージをチェックし、対応するダイアログ ボックスの選択に変換します。 たとえば、Tab キーを押すと、次のコントロールまたはコントロールのグループが選択され、↓キーを押すとグループ内の次のコントロールが選択されます。
IsDialogMessage 関数は、必要なすべてのメッセージの翻訳とディスパッチを実行するため、IsDialogMessage によって処理されるメッセージを TranslateMessage 関数または DispatchMessage 関数に渡す必要はありません。
IsDialogMessage は 、 WM_GETDLGCODEメッセージをダイアログ ボックス プロシージャに送信して、処理する必要があるキーを決定します。
IsDialogMessage は、 DM_GETDEFID メッセージと DM_SETDEFID メッセージをウィンドウに送信できます。 これらのメッセージは Winuser.h ヘッダー ファイルで WM_USER および WM_USER + 1 として定義されているため、同じ値を持つアプリケーション定義メッセージとの競合が発生する可能性があります。
注意
winuser.h ヘッダーは、ISDialogMessage をエイリアスとして定義し、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | winuser.h (Windows.h を含む) |
Library | User32.lib |
[DLL] | User32.dll |
API セット | ext-ms-win-ntuser-dialogbox-l1-1-3 (Windows 10 バージョン 10.0.14393 で導入) |
関連項目
概念
リファレンス