IsDialogMessageA-Funktion (winuser.h)

Bestimmt, ob eine Nachricht für das angegebene Dialogfeld vorgesehen ist, und verarbeitet, wenn dies der Grund ist, die Nachricht.

Syntax

BOOL IsDialogMessageA(
  [in] HWND  hDlg,
  [in] LPMSG lpMsg
);

Parameter

[in] hDlg

Typ: HWND

Ein Handle des Dialogfelds.

[in] lpMsg

Typ: LPMSG

Ein Zeiger auf eine MSG-Struktur , die die zu überprüfende Nachricht enthält.

Rückgabewert

Typ: BOOL

Wenn die Nachricht verarbeitet wurde, ist der Rückgabewert ungleich null.

Wenn die Nachricht nicht verarbeitet wurde, ist der Rückgabewert null.

Hinweise

Obwohl die IsDialogMessage-Funktion für moduslose Dialogfelder vorgesehen ist, können Sie sie mit jedem Fenster verwenden, das Steuerelemente enthält, sodass die Fenster dieselbe Tastaturauswahl wie in einem Dialogfeld bereitstellen können.

Wenn IsDialogMessage eine Nachricht verarbeitet, wird nach Tastaturmeldungen gesucht und in Auswahlmöglichkeiten für das entsprechende Dialogfeld konvertiert. Beispielsweise wählt die TAB-TASTE, wenn sie gedrückt wird, das nächste Steuerelement oder eine Gruppe von Steuerelementen aus, und die NACH-UNTEN-TASTE wählt beim Drücken das nächste Steuerelement in einer Gruppe aus.

Da die IsDialogMessage-Funktion alle erforderlichen Übersetzungen und Das Senden von Nachrichten ausführt, darf eine von IsDialogMessage verarbeitete Nachricht nicht an die TranslateMessage - oder DispatchMessage-Funktion übergeben werden.

IsDialogMessage sendet WM_GETDLGCODE Nachrichten an die Dialogfeldprozedur, um zu bestimmen, welche Schlüssel verarbeitet werden sollen.

IsDialogMessage kann DM_GETDEFID und DM_SETDEFID Nachrichten an das Fenster senden. Diese Meldungen werden in der Winuser.h-Headerdatei als WM_USER und WM_USER + 1 definiert, sodass Konflikte mit anwendungsdefinierte Nachrichten mit denselben Werten möglich sind.

Hinweis

Der winuser.h-Header definiert IsDialogMessage als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winuser.h (windows.h einschließen)
Bibliothek User32.lib
DLL User32.dll
APIs ext-ms-win-ntuser-dialogbox-l1-1-3 (eingeführt in Windows 10, Version 10.0.14393)

Siehe auch

Konzept

DM_GETDEFID

DM_SETDEFID

Dialogfelder

DispatchMessage

MSG

Referenz

TranslateMessage

WM_GETDLGCODE

WM_USER