DLGTEMPLATEEX

Die DLGTEMPLATEEX -Struktur ist nicht in jedem standard-Header-Datei definiert. Die Strukturdefinition dient hier um zu erklären, das Format der eine erweiterte Vorlage für ein Dialogfeld.

Eine erweitertes Dialogfeld Feld Vorlage beginnt mit einem DLGTEMPLATEEX -Header, der beschreibt das Dialogfeld und gibt die Anzahl der Steuerelemente im Dialogfeld. Für jedes Steuerelement in einem Dialogfeld hat eine erweitertes Dialogfeld Feld Vorlage einen Block von Daten, die das DLGITEMTEMPLATEEX -Format verwendet, um das Steuerelement zu beschreiben.

 typedef Struct {Wort DlgVer; WORD Signatur; DWORD HilfeID; DWORD ExStyle; DWORD Stil; WORD cDlgItems; kurze X; kurze y; kurze Cx; kurze cy; Sz_Or_Ord Menü; / / Name oder Ordinalzahl einer Menü-Ressource Sz_Or_Ord WindowClass; / / Name oder Ordinalzahl einer Fenster-Klasse WCHAR Titel [TitleLen]; / / Zeichenfolge des Dialogfeldes Titel kurze Pointsize; / / nur wenn DS_SETFONT Flag gesetzt ist kurze Gewicht; / / nur wenn DS_SETFONT Flag gesetzt ist kurze bItalic; / / nur wenn DS_SETFONT Flag gesetzt ist WCHAR Schriften [FontLen]; / / Schriftart, wenn DS_SETFONT festgelegt ist } DLGTEMPLATEEX 

Mitglieder

dlgVer
Gibt die Versionsnummer der erweiterten Dialogfeld Feld Vorlage. Diese Mitgliedstaaten muss 1 angeben.
signatur
Gibt an, ob eine Vorlage ein erweitertes Dialogfeld Feld Vorlage ist. Wert 0xFFFF zeigt eine erweitertes Dialogfeld Feld Vorlage an. In diesem Fall gibt das DlgVer -Element die Vorlage-Versionsnummer. Wenn Signatur einen anderen Wert als 0xFFFF ist, ist dies eine Standardvorlage, die die Strukturen DLGTEMPLATE und DLGITEMTEMPLATE verwendet.
hilfeID
Gibt den Kontextbezeichner der Hilfe für das Dialogfeld Feld Fenster. Wenn das System sendet eine WM_HELP -Meldung, es übergibt diesen Wert in der DwContextId der HELPINFO Struktur.
exStyle
Gibt erweiterte Stile für ein Fenster. Dieser Member wird nicht zum Erstellen von Dialogfeldern verwendet, aber Anwendungen, die Dialogfeldvorlagen verwenden können es verwenden, um andere Typen von Windows erstellen.
stil
Gibt den Stil des Dialogfelds. Dieses Mitglied kann eine Kombination der Fensterstilwerte (z. B. WS_CAPTION und WS_SYSMENU) und eine oder mehrere der folgenden Dialogfeld im Feld Stilwerte sein.
Wert Bedeutung
DS_3DLOOK Gibt im Dialogfeld eine formatierte Schriftart und zeichnet dreidimensionale Grenzen um Steuerelement Windows im Dialogfeld.

DS_3DLOOK Stil benötigt nur Win32-basierten Anwendungen, die früher als Windows 95 oder Windows NT 4.0 für System-Versionen zusammengestellt. Das System wendet automatisch den dreidimensionalen Blick auf Dialogfelder erstellt von Anwendungen für aktuelle Versionen des Systems.

DS_ABSALIGN Gibt an, dass die Koordinaten des Dialogfelds Bildschirmkoordinaten. Wenn dieses Format nicht angegeben wird, behandelt das System sie als Clientkoordinaten.
DS_CENTER Zentriert das Dialogfeld im Arbeitsbereich; Das heißt, das Gebiet nicht von der Taskleiste verdeckt.
DS_CENTERMOUSE Den Mauszeiger im Dialogfeld-Zentren.
DS_CONTEXTHELP Enthält ein Fragezeichen in der Titelleiste des Dialogfelds. Klickt der Benutzer das Fragezeichen, ändert sich der Cursor in ein Fragezeichen mit einem Zeiger. Wenn der Benutzer dann auf ein Steuerelement im Dialogfeld klickt, erhält das Steuerelement eine WM_HELP-Meldung. Das Steuerelement sollte die Nachricht übergeben, um die Dialogfeld-Prozedur, die aufrufen sollten die WinHelp -Funktion mit dem Befehl HELP_WM_HELP. Die Hilfeanwendung zeigt ein Popup-Fenster, die in der Regel Hilfe für das Steuerelement enthält.

Beachten Sie, dass DS_CONTEXTHELP nur ein Platzhalter ist. Wenn das Dialogfeld erstellt wird, das System sucht DS_CONTEXTHELP und, wenn sie existiert, fügt WS_EX_CONTEXTHELP auf den erweiterten Stil des Dialogfelds. Sie können keine WS_EX_CONTEXTHELP Stil mit dem WS_MAXIMIZEBOX oder WS_MINIMIZEBOX.

DS_CONTROL Erstellt ein Dialogfeld, das nun als untergeordnetes Fenster eines ein weiteres Dialogfeld, ähnlich wie eine Seite in einem Eigenschaftenblatt arbeitet. Dieser Stil ermöglicht es dem Benutzer unter dem Steuerelement Windows das Dialogfeld Kind, verwenden Sie die Zugriffstasten, und so weiter.
DS_FIXEDSYS Bewirkt, dass das Dialogfeld die SYSTEM_FIXED_FONT anstelle des standardmäßigen SYSTEM_FONT verwenden. SYSTEM_FIXED_FONT ist eine Monospace-Schriftart mit der System-Schriftart in Windows-Versionen vor 3.0 kompatibel.
DS_LOCALEDIT Gilt für nur 16-Bit-Anwendungen. Dieser Stil leitet Edit-Steuerelemente in das Dialogfeld Speicher vom Datensegment der Anwendung zuordnen. Ansonsten bearbeiten Kontrollen Speicherzuweisung aus einem Objekt globalen Speicher.
DS_MODALFRAME Erstellt ein Dialogfeld mit einem modalen Dialogfeld-Rahmen, der mit einem Titel- und Systemmenü kombiniert werden kann, durch Angabe der WS_CAPTION und WS_SYSMENU Stile.
DS_NOFAILCREATE Windows 95: Das Dialogfeld erstellt, auch wenn Fehler auftreten – beispielsweise, wenn ein untergeordnetes Fenster kann nicht erstellt werden, oder wenn das System eine spezielle Datensegment für ein Edit-Steuerelement erstellt werden kann.
DS_NOIDLEMSG Unterdrückt WM_ENTERIDLE, die das System sonst an den Besitzer des Dialogfelds senden würde, während das Dialogfeld angezeigt wird.
DS_SETFONT Gibt an, dass die Kopfzeile DLGTEMPLATEEX das erweiterte Dialogfeld Feld Vorlage vier zusätzliche Mitglieder (Pointsize, Gewicht, bItalicund Schriften) enthält, die die Schriftart für den Text in den Clientbereich und die Steuerelemente des Dialogfelds verwenden beschreiben. Wenn möglich, erstellt das System eine Schriftart entsprechend den Werten in dieser Mitglieder. Übergibt dann das System das Handle der Schriftart im Dialogfeld und jedem Steuerelement durch Versenden der Nachricht WM_SETFONT.

Wenn dieses Format nicht angegeben ist, beinhaltet das erweiterte Dialogfeld Feld Vorlage Member Pointsize, Gewicht, bItalicund Schrift nicht.

DS_SETFOREGROUND Bewirkt, dass das System die SetForegroundWindow -Funktion verwenden, um das Dialogfeld in den Vordergrund bringen.
DS_SYSMODAL Dieser Stil ist veraltet und wird aus Kompatibilitätsgründen mit früheren Versionen von Windows enthalten. Wenn Sie dieses Format angeben, erstellt das System das Dialogfeld mit den WS_EX_TOPMOST-Stil. Kombinieren Sie dieser Stil mit dem DS_CONTROL-Stil nicht.

cDlgItems
Gibt die Anzahl der Steuerelemente im Dialogfeld.
x
Gibt die X-Koordinate, in Dialogfeld im Feld Einheiten, von der linken oberen Ecke des Dialogfelds.
y
Gibt die y-Koordinate, in Dialogfeld im Feld Einheiten, von der linken oberen Ecke des Dialogfelds.
cx
Gibt die Breite in Dialogfeld im Feld Einheiten, im Dialogfeld.
cy
Gibt die Höhe im Dialogfeld im Feld Einheiten, im Dialogfeld.
menü
Ein variabler Länge-Array von 16-Bit-Elemente, die für das Dialogfeld eine Menüressource identifiziert angibt. Wenn das erste Element dieses Arrays 0 x 0000 ist, das Dialogfeld hat kein Menü und das Array enthält keine anderen Elemente. Wenn das erste Element 0xFFFF ist, hat das Array ein zusätzliches Element, das den ordinalen-Wert entspricht einer Menü-Ressource in eine ausführbare Datei angibt. Wenn das erste Element einen anderen Wert hat, behandelt das System das Array als eine Null-terminierte Unicode-Zeichenfolge, die den Namen einer Menü-Ressource in eine ausführbare Datei.
windowClass
Gibt ein variabler Länge-Array von 16-Bit-Elemente, die die Fensterklasse im Dialogfeld identifiziert. Wenn das erste Element des Arrays auf 0 x 0000 ist, das System verwendet die vordefinierten Dialogfeld Box-Klasse für das Dialogfeld, und das Array enthält keine anderen Elemente. Wenn das erste Element 0xFFFF ist, hat das Array ein zusätzliches Element, das den ordinalen-Wert einer vordefinierten Systemdaten-Fenster-Klasse gibt. Wenn das erste Element einen anderen Wert hat, behandelt das System das Array als eine Null-terminierte Unicode-Zeichenfolge, die den Namen einer registrierten Fenster-Klasse.
titel
Gibt eine Null-terminierte Unicodezeichenfolge, die den Titel des Dialogfelds enthält. Wenn das erste Element dieses Arrays 0 x 0000 ist, das Dialogfeld hat keinen Namen und das Array enthält keine anderen Elemente.
pointsize
Gibt den Schriftgrad der Schriftart für den Text in das Dialogfeld und seiner Steuerelemente verwenden. Das Pointsize, Gewicht, bItalicund Schriften Mitglieder sind in einer erweiterten Dialogfeld Feld Vorlage anwesend, nur, wenn das Stil -Mitglied der Style DS_SETFONT gibt.
gewicht
Gibt die Gewichtung der Schriftart im Bereich von 0 bis 1000. Dies kann sein, dass die Werte aufgeführt, die für das LfWeight Mitglied der LOGFONT -Struktur. Dieser Member ist vorhanden, nur wenn der Stil -Member DS_SETFONT gibt.
bItalic
Gibt an, ob die Schriftart kursiv ist. Wenn dieser Wert TRUE ist, wird die Schriftart kursiv. Dieser Member ist vorhanden, nur wenn der Stil -Member DS_SETFONT gibt.
schriften
Gibt eine Null-terminierte Unicodezeichenfolge, die den Namen der Schriftart für die Schriftart enthält. Dieser Member ist vorhanden, nur wenn der Stil -Member DS_SETFONT gibt.

Bemerkungen

Statt ein standard-Dialogfeld Feld Vorlage in die Funktionen CreateDialogIndirectParam und DialogBoxIndirectParam und die Makros CreateDialogIndirect und DialogBoxIndirect können Sie eine erweitertes Dialogfeld Feld Vorlage. Eine standard-Dialogfeld Feld Vorlage verwendet die Strukturen DLGTEMPLATE und DLGITEMTEMPLATE.

Nach den DLGTEMPLATEEX -Header in einer erweiterten Dialogfeld Feld Vorlage ist eine oder mehrere DLGITEMTEMPLATEEX -Strukturen, die die Steuerelemente im Dialogfeld zu beschreiben. Das cDlgItems -Element gibt die Anzahl der DLGITEMTEMPLATEEX Strukturen in der Vorlage.

Jede DLGITEMTEMPLATEEX Struktur in der Vorlage muss auf ein DWORD -Grenzen ausgerichtet werden. Wenn das Stil -Mitglied der Style DS_SETFONT angibt, beginnt die erste DLGITEMTEMPLATEEX -Struktur auf der ersten DWORD -Grenze nach der Schriftart -Zeichenfolge. Wenn DS_SETFONT nicht angegeben ist, beginnt die erste Struktur auf die erste DWORD -Grenze nach Titelzeichenfolge.

Menü, WindowClass, Titelund Schriftart -Arrays müssen auf Wortgrenzen ausgerichtet werden.

Wenn Sie Zeichenfolgen in das Menü, WindowClass, Titelund Schriftart -Arrays angeben, müssen Sie Unicode-Zeichenfolgen verwenden. Um Code zu erstellen, die auf Windows und Windows NT funktioniert, verwenden Sie die Funktion MultiByteToWideChar diese Unicode-Zeichenfolgen generieren.

Die X, y, Cxund cy -Member angeben Werte im Dialogfeld im Feld Einheiten. Sie können diese Werte in Einheiten (Pixel) Bildschirm konvertieren, mithilfe der Funktion MapDialogRect.

QuickInfo

&Nbsp; Windows NT: Version 3.51 oder höher erforderlich.
Windows:Erfordert Windows 95 oder höher.
Windows CE:Nicht unterstützt.

Siehe auch

Übersicht über Dialogfelder, Dialogfeld Feld Strukturen, CreateDialogIndirect, CreateDialogIndirectParam, DialogBoxIndirect, DialogBoxIndirectParam, DLGITEMTEMPLATE, DLGITEMTEMPLATEEX, DLGTEMPLATE, MapDialogRect, MultiByteToWideChar, WM_SETFONT