Funkcja IsDialogMessage określa, czy wiadomość ma określonego okna dialogowego i, jeżeli tak jest, przetwarza wiadomość.
(BOOL IsDialogMessage HWND hDlg, / / uchwyt okna dialogowegoLPMSGlpMsg / / adresu struktury z wiadomości);
Jeśli wiadomość została przetworzona, wartość zwracany jest różna od zera.
Jeśli komunikat nie został przetworzony, wartość zwracany jest zero.
Mimo że funkcja IsDialogMessage jest przeznaczony do niemodalny okien dialogowych, można użyć go z dowolnego okna, zawierającą formanty, umożliwiając windows zapewniające ten sam wybór klawiatury jest używany w oknie dialogowym.
Kiedy IsDialogMessage przetwarza wiadomość, sprawdza wiadomości klawiatury i konwertuje je na zaznaczenie polecenia w odpowiednim oknie dialogowym. Na przykład klawisz tab, po naciśnięciu wybiera następny formant lub grupy kontroli i klawisz strzałki w dół, po naciśnięciu, wybiera następny formant w grupie.
Ponieważ funkcję IsDialogMessage wykonuje wszystkie niezbędne tłumaczenia i dostarczenie wiadomości, wiadomości przetwarzanej przez IsDialogMessage nie muszą zostać przekazane do funkcji DispatchMessage lub TranslateMessage.
IsDialogMessage wysyła komunikaty WM_GETDLGCODE procedura pole dialogowe w celu określenia, które klucze powinny być przetwarzane.
IsDialogMessage można wysyłać wiadomości DM_GETDEFID i DM_SETDEFID do okna. Komunikaty te są zdefiniowane w WINUSER.H nagłówka pliku jako WM_USER i WM_USER + 1, tak konflikty są możliwe ze zdefiniowanych przez aplikację wiadomości o takich samych wartościach.
nbsp; Windows &NT: wymagana wersja 3.1 lub nowsza.
Systemu Windows:Wymaga systemu Windows 95 lub nowszego.
Systemu Windows CE:Wymaga wersja 1.0 lub nowsza.
Nagłówka:Zadeklarowane w pliku winuser.h.
Importowanie biblioteki:Należy użyć user32.lib.
Unicode:Implementowane jako wersje Unicode i ANSI w systemie Windows NT.
Omówienie pola dialogowego, okno dialogowe pole funkcji, DispatchMessage, DM_GETDEFID, DM_SETDEFID, MSG, TranslateMessage, WM_GETDLGCODE, WM_USER