Struktura DLGTEMPLATEEX nie jest zdefiniowany w dowolnym pliku standardowego nagłówka. Określenie struktury znajduje się tutaj do wyjaśnienia format rozszerzony szablon okna dialogowego.
Szablon pola dialogowe rozszerzone zaczyna się od nagłówka DLGTEMPLATEEX , który opisuje okno dialogowe i określa liczbę formantów w oknie dialogowym. Dla każdego formantu w oknie dialogowym szablonu pole dialogowe rozszerzone ma bloku danych, który używa formatu DLGITEMTEMPLATEEX do opisania kontroli.
element TypeDef struct {wyraz dlgVer; Program WORD podpisu; DWORD helpID; DWORD exStyle; DWORD stylu; Program WORD cDlgItems; krótkie x; krótkie y; krótkie cx; cy krótki; sz_Or_Ord menu; / Nazwa lub liczebniki zasobu menu sz_Or_Ord windowClass; / Nazwa lub liczebniki klasy okno Tytuł WCHAR [titleLen]; / / Tytuł ciąg, okno dialogowe krótkie pointsize; / / tylko wtedy, gdy jest ustawiona flaga DS_SETFONT krótkie wagi; / / tylko wtedy, gdy jest ustawiona flaga DS_SETFONT krótkie bItalic; / / tylko wtedy, gdy jest ustawiona flaga DS_SETFONT Czcionki WCHAR [fontLen]; / / kroju czcionki nazwy, jeśli ustawiono DS_SETFONT } DLGTEMPLATEEX
Wartość | Znaczenie |
---|---|
DS_3DLOOK | Przedstawia okno dialogowe czcionkę nonbold i rysuje trójwymiarowego obramowania wokół kontroli systemu windows w oknie dialogowym. Styl DS_3DLOOK jest wymagane przez aplikacje oparte na Win32, sporządzanych dla systemów starszych niż system Windows 95 lub Windows NT 4.0. System automatycznie stosuje trójwymiarowy wygląd do okien dialogowych utworzonych przez aplikacje opracowane dla bieżącej wersji systemu. |
DS_ABSALIGN | Wskazuje, że współrzędne okna dialogowego współrzędnymi ekranowymi. Jeśli styl ten nie jest określona, system traktuje je jako klient współrzędne. |
DS_CENTER | Wyśrodkowuje okna dialogowego w obszarze roboczym; oznacza to, że obszar nie zasłonięte przez zasobnik. |
DS_CENTERMOUSE | Wyśrodkowuje kursor myszy w oknie dialogowym. |
DS_CONTEXTHELP | Zawiera znak zapytania w pasku tytułu okna dialogowego. Kiedy użytkownik kliknie znak zapytania, kursor zmienia na znak zapytania ze wskaźnika. Jeśli użytkownik klika formantu w oknie dialogowym, formant uzyskuje komunikat WM_HELP. Kontrolę należy przekazać wiadomości do procedury okno dialogowe, które powinny wywołać WinHelp funkcji za pomocą polecenia HELP_WM_HELP. Aplikacja Pomoc wyświetla wyskakujące okno, w którym zazwyczaj zawiera pomoc dla formantu. Należy zauważyć, że DS_CONTEXTHELP jest tylko element zastępczy. Tworzenia okna dialogowego system sprawdza DS_CONTEXTHELP i, jeśli ma, dodaje WS_EX_CONTEXTHELP do rozszerzonego styl okna dialogowego. Nie można użyć stylu WS_EX_CONTEXTHELP z style WS_MAXIMIZEBOX lub WS_MINIMIZEBOX. |
DS_CONTROL | Tworzy okno dialogowe, które działa również jako okna podrzędnego innego okna dialogowego, podobnie jak strony w arkuszu właściwości. Ten styl zezwala użytkownikowi na karcie wśród okien sterowania okno dialogowe dziecka, jego klawiszy skrótu i tak dalej. |
DS_FIXEDSYS | Powoduje, że okno dialogowe do stosowania SYSTEM_FIXED_FONT zamiast domyślnej SYSTEM_FONT. SYSTEM_FIXED_FONT jest zgodny z czcionki systemowej w wersji systemu Windows starszych niż 3.0 czcionka o stałej szerokości. |
DS_LOCALEDIT | Dotyczy to tylko aplikacji 16-bitowych. Ten styl kieruje edycyjnym w oknie dialogowym przydzielić pamięci z segmentów danych aplikacji. W przeciwnym wypadku edytowanie formantów przydzielić pamięci masowej z obiektu globalnej pamięci. |
DS_MODALFRAME | Tworzy okno dialogowe z ramką modalne okno dialogowe, którą można łączyć z paska tytułu i menu systemowe określając style WS_CAPTION i WS_SYSMENU. |
DS_NOFAILCREATE | Systemu Windows 95: Tworzy okno dialogowe, nawet jeśli występują błędy — na przykład, jeśli nie można utworzyć okna podrzędnego lub jeśli system nie może utworzyć segment specjalne dane dla formant edycyjny. |
DS_NOIDLEMSG | Pomija komunikaty WM_ENTERIDLE, które system inaczej będzie wysyłać do właściciela okna dialogowego podczas gdy wyświetlane jest okno dialogowe. |
DS_SETFONT | Wskazuje, że nagłówek DLGTEMPLATEEX szablonu pole dialogowe rozszerzone zawiera cztery dodatkowych członków (pointsize, Waga, bItalici czcionki), które opisują czcionki dla tekstu w obszarze klienta i formanty okna dialogowego. Jeśli to możliwe system tworzy czcionkę zgodnie z wartościami określonymi w tych członków. Następnie system przechodzi uchwyt Czcionka aby oknie i do każdego formantu przesyłając komunikat WM_SETFONT. Jeśli styl ten nie jest określona, szablon pole dialogowe rozszerzone nie obejmuje członków pointsize, Waga, bItalici czcionki. |
DS_SETFOREGROUND | Powoduje, że system, aby używać funkcji SetForegroundWindow aby oknie na pierwszym planie. |
DS_SYSMODAL | Styl ten jest przestarzały i nie jest włączone dla zachowania zgodności ze starszymi wersjami systemu Windows. Jeśli określisz ten styl, system tworzy okno dialogowe Styl WS_EX_TOPMOST. Nie połączyć ten styl stylem DS_CONTROL. |
Można użyć szablonu pole dialogowe rozszerzone zamiast szablon pole standardowe okno dialogowe Funkcje CreateDialogIndirectParam i DialogBoxIndirectParam i makra CreateDialogIndirect i DialogBoxIndirect . Szablon pola standardowe okno dialogowe używa struktur DLGTEMPLATE i DLGITEMTEMPLATE.
Po nagłówku DLGTEMPLATEEX w szablonie pole dialogowe rozszerzone jest jeden lub więcej struktur DLGITEMTEMPLATEEX , które opisują formantów okna dialogowego. Członek cDlgItems określa liczbę DLGITEMTEMPLATEEX struktur w szablonie.
Każda struktura DLGITEMTEMPLATEEX w szablonie muszą być dostosowane do granicy DWORD . Jeżeli członek styl określa styl DS_SETFONT, pierwszy struktura DLGITEMTEMPLATEEX rozpoczyna się na pierwsze krawędY DWORD po ciągu czcionki . Jeśli DS_SETFONT nie jest określony, pierwszy struktura rozpoczyna się na pierwsze krawędY DWORD po ciągu Tytuł.
Menu, windowClass, Tytułi czcionki tablic muszą być dostosowane do programu WORD granice.
Jeśli określisz ciągów znaków w menu, windowClass, Tytułi tablice czcionki , należy użyć ciągów Unicode. Aby utworzyć kod, który działa w systemie Windows i Windows NT, należy użyć funkcji MultiByteToWideChar do generowania tych ciągów Unicode.
Członkowie x, y, cxi cy określić wartości w oknie dialogowym pole jednostkach. Te wartości można przekonwertować na ekranie jednostek (w pikselach), za pomocą funkcji MapDialogRect.
nbsp; Windows &NT: wymaga wersji 3.51 lub nowszych.
Systemu Windows:Wymaga systemu Windows 95 lub nowszego.
Systemu Windows CE:Nieobsługiwana.
Omówienie pola dialogowego, okno dialogowe pole struktur, CreateDialogIndirect, CreateDialogIndirectParam, DialogBoxIndirect, DialogBoxIndirectParam, DLGITEMTEMPLATE, DLGITEMTEMPLATEEX, DLGTEMPLATE, MapDialogRect, MultiByteToWideChar, WM_SETFONT