Udostępnij za pośrednictwem


Okna dialogowe (okna dialogowe)

Okno dialogowe to okno tymczasowe tworzone przez aplikację w celu pobrania danych wejściowych użytkownika. Aplikacja zazwyczaj używa okien dialogowych, aby monitować użytkownika o dodatkowe informacje dotyczące elementów menu. Okno dialogowe zwykle zawiera co najmniej jedną kontrolkę (okna podrzędne), z którą użytkownik wprowadza tekst, wybiera opcje lub kieruje akcję.

System Windows udostępnia również wstępnie zdefiniowane okna dialogowe, które obsługują typowe elementy menu, takie jak Open i Print. Aplikacje korzystające z tych elementów menu powinny używać typowych okien dialogowych, aby wyświetlić monit o podanie danych wejściowych tego użytkownika, niezależnie od typu aplikacji.

W tej sekcji

Nazwa Opis
informacje o oknach dialogowych Omówienie korzystania z okien dialogowych w interfejsie użytkownika dla aplikacji.
zagadnienia dotyczące programowania okien dialogowych W tym omówieniu omówiono niektóre zagadnienia dotyczące programowania dotyczące okien dialogowych.
przy użyciu okien dialogowych Okna dialogowe służą do wyświetlania informacji i monitowania o podanie danych wejściowych od użytkownika.
dokumentacja okna dialogowego Dokumentacja interfejsu API
typowe biblioteki okien dialogowych Omówienie używania typowych okien dialogowych w interfejsie użytkownika dla aplikacji.

Funkcje okna dialogowego

Nazwa Opis
CreateDialog Tworzy okno dialogowe bez moderowania na podstawie zasobu szablonu okna dialogowego.
createDialogIndirect Tworzy bez moderowe okno dialogowe z szablonu okna dialogowego w pamięci.
createDialogIndirectParam Tworzy bez moderowe okno dialogowe z szablonu okna dialogowego w pamięci. Przed wyświetleniem okna dialogowego funkcja przekazuje wartość zdefiniowaną przez aplikację do procedury okna dialogowego jako parametr lParam komunikatu WM_INITDIALOG. Aplikacja może użyć tej wartości do zainicjowania kontrolek okna dialogowego.
CreateDialogParam Tworzy okno dialogowe bez moderowania na podstawie zasobu szablonu okna dialogowego. Przed wyświetleniem okna dialogowego funkcja przekazuje wartość zdefiniowaną przez aplikację do procedury okna dialogowego jako parametr lParam komunikatu WM_INITDIALOG. Aplikacja może użyć tej wartości do zainicjowania kontrolek okna dialogowego.
DefDlgProc Wywołuje domyślną procedurę okna dialogowego, aby zapewnić domyślne przetwarzanie wszystkich komunikatów okna, które okno dialogowe z prywatną klasą okien nie przetwarza.
okno dialogowe Tworzy modalne okno dialogowe z zasobu szablonu okna dialogowego. Okno dialogowe nie zwraca kontroli, dopóki określona funkcja wywołania zwrotnego nie zakończy modalnego okna dialogowego przez wywołanie funkcji EndDialog.
DialogBoxIndirect Tworzy modalne okno dialogowe na podstawie szablonu okna dialogowego w pamięci. DialogBoxIndirect nie zwraca kontroli, dopóki określona funkcja wywołania zwrotnego nie zakończy modalnego okna dialogowego przez wywołanie funkcjiEndDialog.
DialogBoxIndirectParam Tworzy modalne okno dialogowe na podstawie szablonu okna dialogowego w pamięci. Przed wyświetleniem okna dialogowego funkcja przekazuje wartość zdefiniowaną przez aplikację do procedury okna dialogowego jako parametr lParam komunikatu WM_INITDIALOG. Aplikacja może użyć tej wartości do zainicjowania kontrolek okna dialogowego.
DialogBoxParam Tworzy modalne okno dialogowe z zasobu szablonu okna dialogowego. Przed wyświetleniem okna dialogowego funkcja przekazuje wartość zdefiniowaną przez aplikację do procedury okna dialogowego jako parametr lParam komunikatu WM_INITDIALOG. Aplikacja może użyć tej wartości do zainicjowania kontrolek okna dialogowego.
okno dialogowe Proc Funkcja wywołania zwrotnego zdefiniowana przez aplikację używana z CreateDialog i DialogBox rodzin funkcji. Przetwarza komunikaty wysyłane do modalnego lub moderowego okna dialogowego. Typ DLGPROC definiuje wskaźnik dla tej funkcji wywołania zwrotnego. DialogProc jest symbolem zastępczym nazwy funkcji zdefiniowanej przez aplikację.
EndDialog Niszczy modalne okno dialogowe, co powoduje zakończenie dowolnego przetwarzania dla okna dialogowego.
GetDialogBaseUnits Pobiera jednostki podstawowe okna dialogowego systemu, które są średnią szerokością i wysokością znaków w czcionki systemowej. W przypadku okien dialogowych używających czcionki systemowej można użyć tych wartości do konwersji między jednostkami szablonu okna dialogowego, jak określono w szablonach okna dialogowego i pikselach. W przypadku okien dialogowych, które nie używają czcionki systemowej, konwersja z jednostek szablonu okna dialogowego na piksele zależy od czcionki używanej przez okno dialogowe.
GetDlgCtrlID Pobiera identyfikator określonej kontrolki.
GetDlgItem Pobiera uchwyt do kontrolki w określonym oknie dialogowym.
GetDlgItemInt Tłumaczy tekst określonej kontrolki w oknie dialogowym na wartość całkowitą.
GetDlgItemText Pobiera tytuł lub tekst skojarzony z kontrolką w oknie dialogowym.
GetNextDlgGroupItem Pobiera uchwyt do pierwszej kontrolki w grupie kontrolek poprzedzających (lub poniżej) określonej kontrolki w oknie dialogowym.
GetNextDlgTabItem Pobiera uchwyt do pierwszej kontrolki, która ma styl WS_TABSTOP poprzedzający (lub następujący) określoną kontrolkę.
IsDialogMessage Określa, czy komunikat jest przeznaczony dla określonego okna dialogowego, a jeśli tak, przetwarza komunikat.
MapDialogRect Konwertuje określone jednostki okna dialogowego na jednostki ekranu (piksele). Funkcja zastępuje współrzędne w określonej strukturze RECT przekonwertowanymi współrzędnymi, co umożliwia utworzenie okna dialogowego lub położenie kontrolki w oknie dialogowym.
MessageBox Wyświetla modalne okno dialogowe zawierające ikonę systemu, zestaw przycisków i krótki komunikat specyficzny dla aplikacji, taki jak informacje o stanie lub błędzie. Pole komunikatu zwraca wartość całkowitą wskazującą, który przycisk kliknął użytkownik.
MessageBoxEx Tworzy, wyświetla i obsługuje pole komunikatu. Pole komunikatu zawiera komunikat zdefiniowany przez aplikację i tytuł oraz dowolną kombinację wstępnie zdefiniowanych ikon i przycisków. Przyciski są w języku interfejsu użytkownika systemu.
MessageBoxIndirect Tworzy, wyświetla i obsługuje pole komunikatu. Pole komunikatu zawiera tekst i tytuł komunikatu zdefiniowanego przez aplikację, dowolną ikonę i dowolną kombinację wstępnie zdefiniowanych przycisków.
SendDlgItemMessage Wysyła komunikat do określonej kontrolki w oknie dialogowym.
SetDlgItemInt Ustawia tekst kontrolki w oknie dialogowym na ciąg reprezentujący określoną wartość całkowitą.
SetDlgItemText Ustawia tytuł lub tekst kontrolki w oknie dialogowym.

Komunikaty okna dialogowego

Nazwa Opis
DM_GETDEFID Pobiera identyfikator domyślnej kontrolki przycisku push dla okna dialogowego.
DM_REPOSITION Zmienia położenie okna dialogowego najwyższego poziomu, tak aby mieściło się w obszarze pulpitu. Aplikacja może wysłać ten komunikat do okna dialogowego po zmianie rozmiaru, aby upewnić się, że całe okno dialogowe pozostanie widoczne.
DM_SETDEFID Zmienia identyfikator domyślnego przycisku wypychania dla okna dialogowego.

Powiadomienia okna dialogowego

Nazwa Opis
WM_CTLCOLORDLG Wysłane do okna dialogowego przed uruchomieniem okna dialogowego przez system. Odpowiadając na ten komunikat, okno dialogowe może ustawić jego kolory tekstu i tła przy użyciu określonego uchwytu kontekstowego urządzenia wyświetlania.
WM_ENTERIDLE Wysłane do okna właściciela modalnego okna dialogowego lub menu, które wprowadza stan bezczynności. Modalne okno dialogowe lub menu wprowadza stan bezczynności, gdy żadne komunikaty nie oczekują w kolejce po przetworzeniu co najmniej jednego poprzedniego komunikatu.
WM_GETDLGCODE Wysłane do procedury okna skojarzonej z kontrolką. Domyślnie system obsługuje wszystkie dane wejściowe klawiatury w kontrolce; system interpretuje niektóre typy danych wejściowych klawiatury jako nawigacji okna dialogowego. Aby zastąpić to domyślne zachowanie, kontrolka może odpowiedzieć na komunikat WM_GETDLGCODE, aby wskazać typy danych wejściowych, które chce przetworzyć.
WM_INITDIALOG Wysłane do procedury okna dialogowego bezpośrednio przed wyświetleniem okna dialogowego. Procedury okna dialogowego zwykle używają tego komunikatu do inicjowania kontrolek i wykonywania innych zadań inicjowania, które mają wpływ na wygląd okna dialogowego.
WM_NEXTDLGCTL Wysłane do procedury okna dialogowego, aby ustawić fokus klawiatury na inną kontrolkę w oknie dialogowym.

Struktury okien dialogowych

Nazwa Opis
DLGITEMTEMPLATE Definiuje wymiary i styl kontrolki w oknie dialogowym. Co najmniej jedna z tych struktur jest połączona z strukturą DLGTEMPLATE w celu utworzenia standardowego szablonu okna dialogowego.
DLGITEMTEMPLATEEX Opisuje rozszerzone okno dialogowe. Aby uzyskać opis formatu rozszerzonego szablonu okna dialogowego, zobacz DLGTEMPLATEEX.
DLGTEMPLATE Definiuje wymiary i styl okna dialogowego. Ta struktura, zawsze pierwsza w standardowym szablonie okna dialogowego, określa również liczbę kontrolek w oknie dialogowym i dlatego określa liczbę kolejnych DLGITEMTEMPLATE struktur w szablonie.
DLGTEMPLATEEX Rozszerzony szablon okna dialogowego rozpoczyna się od nagłówka DLGTEMPLATEEX opisującego okno dialogowe i określa liczbę kontrolek w oknie dialogowym. Dla każdej kontrolki w oknie dialogowym szablon rozszerzonego okna dialogowego ma blok danych, który używa DLGITEMTEMPLATEEX format do opisania kontrolki.
MSGBOXPARAMS Zawiera informacje używane do wyświetlania pola komunikatu. Funkcja MessageBoxIndirect używa tej struktury.