DLGTEMPLATE

De DLGTEMPLATE structuur definieert de afmetingen en de stijl van een dialoogvenster. Deze structuur, altijd de eerste in een standaard template voor een dialoogvenster, geeft ook het aantal besturingselementen in het dialoogvenster en daarom geeft het aantal latere DLGITEMTEMPLATE structuren in de sjabloon.

typedef struct {/ / dltt DWORD-stijl; 
    DWORD-dwExtendedStyle; 
    WORD cdit; 
    korte x; 
    korte y; 
    korte cx; 
    korte cy; 
} DLGTEMPLATE 
 

Leden

stijl
Geeft de stijl van het dialoogvenster. Dit lid kan worden, een combinatie van venster stijl waarden (zoals WS_CAPTION en WS_SYSMENU) en een of meer van de volgende waarden in het dialoogvenster stijl:
Waarde Betekenis
DS_3DLOOK Geeft het dialoogvenster een niet-vette lettertype en driedimensionale grenzen trekt hele besturingselement windows in het dialoogvenster.

De DS_3DLOOK stijl is alleen door Win32-gebaseerde applicaties die gecompileerd zijn voor systeemversies eerder dan Windows 95 of Windows NT 4.0 vereist. Het systeem geldt automatisch de driedimensionaal uiterlijk voor dialoogvensters gemaakt door applicaties die gecompileerd zijn voor huidige versies van het systeem.

DS_ABSALIGN Geeft aan dat de co÷rdinaten van het dialoogvenster de schermco÷rdinaten. Als deze stijl niet is opgegeven, het systeem gaat ervan uit dat ze zijn client co÷rdinaten.
DS_CENTER Hiermee centreert u het dialoogvenster in het werkgebied; dat wil zeggen het gebied niet verduisterd door de lade.
DS_CENTERMOUSE Hiermee centreert u de muiscursor in het dialoogvenster.
DS_CONTEXTHELP Omvat een vraagteken in de titelbalk van het dialoogvenster. Wanneer de gebruiker klikt op het vraagteken, de cursor verandert in een vraagteken met een pointer. Als de gebruiker vervolgens klikt op een besturingselement in het dialoogvenster, krijgt het besturingselement WM_HELP bericht. Het besturingselement moet de boodschap doorgeven aan de dialoogvenster vak procedure, die moet noemen de WinHelp functie met behulp van de opdracht HELP_WM_HELP. De Help-toepassing een pop-upvenster dat meestal help voor het besturingselement bevat wordt weergegeven.

Merk op dat DS_CONTEXTHELP slechts een tijdelijke aanduiding is. Wanneer het dialoogvenster is gemaakt, het systeem controleert op DS_CONTEXTHELP en, als het er, WS_EX_CONTEXTHELP toegevoegd aan de uitgebreide stijl van het dialoogvenster. WS_EX_CONTEXTHELP kan niet worden gebruikt met de stijlen van WS_MAXIMIZEBOX of WS_MINIMIZEBOX.

DS_CONTROL Hiermee maakt u een dialoogvenster dat goed als een onderliggend venster van een ander dialoogvenster, net als een pagina in een eigenschappenvenster werkt. Deze stijl kan de gebruiker tab onder de windows controle van het dialoogvenster kind, gebruiken de sneltoetsen, enzovoort.
DS_FIXEDSYS Zorgt ervoor dat het dialoogvenster gebruiken de SYSTEM_FIXED_FONT in plaats van de standaard SYSTEM_FONT. SYSTEM_FIXED_FONT is een monospace lettertype compatibel met het systeemlettertype in Windowsversies ouder dan 3.0.
DS_LOCALEDIT Geldt voor 16-bits toepassingen alleen. Deze stijl regisseert bewerken besturingselementen in het dialoogvenster geheugen toewijzen uit de toepassing van de gegevenssegment. Anders, bewerken besturingselementen toewijzen opslag van een globale geheugen-object.
DS_MODALFRAME Een dialoogvenster met een modaal dialoogvenster-frame dat kan worden gecombineerd met een titelbalk en een systeemmenu door te geven van de WS_CAPTION en WS_SYSMENU stijlen gemaakt.
DS_NOFAILCREATE Windows 95: Het dialoogvenster gemaakt, zelfs als er fouten optreden Ś bijvoorbeeld als een onderliggend venster kan niet worden gemaakt of als het systeem geen een speciale gegevenssegment voor een edit-besturingselement maken.
DS_NOIDLEMSG WM_ENTERIDLE onderdrukt, dat het systeem anders naar de eigenaar van het dialoogvenster sturen zou terwijl het dialoogvenster wordt weergegeven.
DS_SETFONT Geeft aan dat de kop van het dialoogvenster vak sjabloon bevat aanvullende gegevens opgeven van het lettertype voor de tekst in het clientgebied en besturingselementen van het dialoogvenster. De gegevens van het lettertype begint op de woord -grens die de titel array volgt. Het geeft de waarde van de grootte van een 16-bits punt en een Unicode-lettertype naam tekenreeks. Indien mogelijk, creŰert het systeem een lettertype volgens de opgegeven waarden. Daarna gaat het systeem de greep van het lettertype in het dialoogvenster en aan elk besturingselement door deze te verzenden het bericht WM_SETFONT.

Als deze stijl niet is opgegeven, omvat het dialoogvenster vak sjabloon niet de lettertype-gegevens.

DS_SETFOREGROUND Het systeem om de SetForegroundWindow -functie gebruiken om het dialoogvenster naar de voorgrond te.
DS_SYSMODAL Deze stijl is verouderd en is opgenomen voor compatibiliteit met eerdere versies van Windows. Als u deze stijl opgeeft, geeft het systeem wordt gemaakt in het dialoogvenster met de stijl WS_EX_TOPMOST. Deze stijl met de DS_CONTROL stijl niet combineren.

dwExtendedStyle
Hiermee geeft u uitgebreide stijlen voor een venster. Dit lid is niet gebruikt om dialoogvensters te maken, maar toepassingen die gebruikmaken van dialoogvenster vak sjablonen kunnen gebruiken om andere typen windows maken.
cdit
Hiermee geeft u het aantal items in het dialoogvenster.
x
Hiermee geeft u de x-co÷rdinaat, in dialoogvenster vak eenheden, van de linkerbovenhoek van het dialoogvenster.
y
Hiermee geeft u de y-co÷rdinaat, in dialoogvenster vak eenheden, van de linkerbovenhoek van het dialoogvenster.
cx
De breedte, in dialoogvenster vak eenheden, in het dialoogvenster.
cy
Hiermee geeft u de hoogte, in dialoogvenster vak eenheden, in het dialoogvenster.

Opmerkingen

In een standaard template voor een dialoogvenster, wordt de structuur DLGTEMPLATE altijd onmiddellijk gevolgd door drie arrays van variabele lengte die de menu, klasse en titel voor het dialoogvenster opgeven. Wanneer de DS_SETFONT stijl is gegeven, zijn ook deze arrays gevolgd door een 16-bits waarde die aangeeft puntgrootte en een andere variabele lengte array de naam van een lettertype op te geven. Elke array bestaat uit een of meer elementen van 16-bits. Het menu, klasse, titel en lettertype matrices moeten worden uitgelijnd op woordgrenzen.

Onmiddellijk na de DLGTEMPLATE structuur is een menu-matrix die een resource menu voor het dialoogvenster aangeeft. Als het eerste element van deze array 0x0000 is, het dialoogvenster heeft geen menu en de array heeft geen andere elementen. Als het eerste element 0xFFFF is, heeft de matrix een extra element dat aangeeft van de ordinale waarde van een menu resource in een uitvoerbaar bestand. Als het eerste element een andere waarde heeft, het systeem wordt de matrix beschouwd als een op null eindigende Unicode-tekenreeks die de naam van een menu resource in een uitvoerbaar bestand.

Na de menu-array is een klasse matrix die de klasse van het venster van het besturingselement aangeeft. Als het eerste element van de matrix 0x0000 is, het systeem maakt gebruik van de klasse box vooraf gedefinieerde dialoogvenster voor het dialoogvenster en de array heeft geen andere elementen. Als het eerste element 0xFFFF is, heeft de matrix een extra element dat aangeeft van de ordinale waarde van een vooraf gedefinieerde systeem venster klasse. Als het eerste element een andere waarde heeft, het systeem de array wordt beschouwd als een op null eindigende Unicode-tekenreeks die de naam van een geregistreerde window class aangeeft.

Na de klasse matrix is een matrix van een titel die bevat een op null eindigende Unicode-tekenreeks die de titel van het dialoogvenster bevat. Als het eerste element van deze array 0x0000 is, het dialoogvenster geen titel heeft en de array heeft geen andere elementen.

De 16-bits puntenwaarde grootte en de lettertype-matrix volgen de titel matrix, maar alleen als het lid stijl de DS_SETFONT stijl geeft. De waarde grootte Hiermee geeft u de puntgrootte van het lettertype voor de tekst in het dialoogvenster en de bijbehorende besturingselementen. De lettertype-array is een op null eindigende Unicode string die de naam van het lettertype voor het lettertype. Wanneer deze waarden worden gegeven, het systeem maakt een lettertype met de gegeven grootte en lettertype (indien mogelijk) en een WM_SETFONT-bericht stuurt naar het dialoogvenster vak procedure en de controleprocedures venster aangezien het creŰert het dialoogvenster en besturingselementen.

Na de header DLGTEMPLATE in een standaard dialoogvenster vak sjabloon zijn een of meer DLGITEMTEMPLATE structuren die de afmetingen en de stijl van de besturingselementen in het dialoogvenster bepalen. Lid van de cdit geeft het aantal DLGITEMTEMPLATE structuren in de sjabloon. Deze DLGITEMTEMPLATE structuren moeten worden uitgelijnd op DWORD grenzen.

Als u tekenreeksen in het menu, klasse, titel of matrices lettertype opgeeft, moet u Unicode-tekenreeksen. Gebruik de functie MultiByteToWideChar voor het genereren van deze Unicode-tekenreeksen om code die op zowel Windows als Windows NT werkt maken,.

De x, y, cxen cy leden opgeven waarden in het dialoogvenster vak eenheden. U kunt deze waarden converteren naar scherm eenheden (pixels) met behulp van de functie MapDialogRect.

Syntaxisinfo

nbsp;áWindows &NT: versie 3.1 of hoger vereist.
Windows:Windows 95 of hoger vereist.
Windows CE:Versie 1.0 of hoger vereist.
Header:Verklaard in winuser.h.

Zie ook

Overzicht van dialoogvenster vakken, dialoogvenster vak structuren, CreateDialogIndirect, CreateDialogIndirectParam, DialogBoxIndirect, DialogBoxIndirectParam, DLGITEMTEMPLATE, DLGITEMTEMPLATEEX, DLGTEMPLATEEX, MapDialogRect, MultiByteToWideChar

Index