La struttura DLGITEMTEMPLATE definisce le dimensioni e lo stile di un controllo in una finestra di dialogo. Uno o più di queste strutture sono combinati con una struttura DLGTEMPLATE per formare un modello standard per una finestra di dialogo.
typedef struct {/ / stile DWORD dlit;
DWORD dwExtendedStyle;
breve x;
y breve;
cx breve;
cy breve;
PAROLA id;
} DLGITEMTEMPLATE
In un modello standard per una finestra di dialogo, la struttura DLGITEMTEMPLATE è sempre immediatamente seguita da tre matrici di lunghezza variabile, specificando la classe, titolo e dati per la creazione del controllo. Ogni matrice è costituito da uno o più elementi a 16-bit.
Ogni struttura DLGITEMTEMPLATE nel modello deve essere allineato su un confine DWORD . Le matrici di classe e il titolo devono essere allineate limiti a parole . La matrice di creazione dati deve essere allineata su un limite di parola.
Subito dopo ogni struttura DLGITEMTEMPLATE è una matrice di classe che identifica la classe della finestra del controllo. Se il primo elemento della matrice è un valore diverso da 0xFFFF, il sistema gestisce la matrice come stringa Unicode con terminazione null che specifica il nome di una classe finestra registrati. Se il primo elemento è 0xFFFF, la matrice avrà un ulteriore elemento che specifica il valore ordinale di una classe di sistema predefiniti. Il numero ordinale può essere uno dei seguenti valori di atomo.
Valore | Significato |
---|---|
0x0080 | Pulsante |
0x0081 | Modifica |
0x0082 | Statica |
0x0083 | Casella di riepilogo |
0x0084 | Barra di scorrimento |
0x0085 | Casella combinata |
Seguendo la matrice di classe è una matrice di titolo contenente l'identificatore di risorsa o testo iniziale del controllo. Se il primo elemento della matrice è 0xFFFF, la matrice avrà un ulteriore elemento che specifica un valore ordinale di una risorsa, ad esempio un'icona, in un file eseguibile. È possibile utilizzare un identificatore di risorsa per i controlli, ad esempio controlli statici icona, caricare e visualizzare un'icona o altre risorse piuttosto che testo. Se il primo elemento è un valore diverso da 0xFFFF, il sistema considera la matrice come una stringa Unicode con terminazione null che specifica il testo iniziale.
La matrice di dati creazione inizia presso il confine di parola successivo dopo la matrice del titolo. Dati per la creazione possono essere di qualsiasi dimensione e formato. Se la prima parola della matrice creazione dati è diverso da zero, esso indica la dimensione in byte di dati creazione (tra cui la parola di dimensione). La routine della finestra del controllo deve essere in grado di interpretare i dati. Quando il sistema crea il controllo, passa un puntatore a questi dati nel parametro lParam del messaggio WM_CREATE inviati al controllo.
Se si specificano stringhe di caratteri nelle matrici di classe e il titolo, è necessario utilizzare stringhe Unicode. Per creare codice che funziona su Windows e Windows NT, utilizzare la funzione MultiByteToWideChar per generare queste stringhe Unicode.
I membri x, y, cx, cy e specificano i valori in unità di casella di dialogo. È possibile convertire questi valori in unità schermo (pixel) utilizzando la funzione MapDialogRect.
nbsp; Windows &NT: richiede 3.1 o versione successiva.
Windows:Richiede Windows 95 o versioni successive.
Windows CE:Richiede la versione 1.0 o successiva.
Intestazione:Dichiarata in winuser.
Panoramica di finestre di dialogo, finestra di dialogo casella strutture, CreateDialogIndirect, CreateDialogIndirectParam, CreateWindowEx, DialogBoxIndirect, DialogBoxIndirectParam, DLGITEMTEMPLATEEX, DLGTEMPLATE, DLGTEMPLATEEX, MapDialogRect, MultiByteToWideChar, WM_CREATE
Rimedio: Inserire il CD-ROM CD di MSDN Library.