Struttura DLGITEMTEMPLATE (winuser.h)
Definisce le dimensioni e lo stile di un controllo in una finestra di dialogo. Una o più di queste strutture sono combinate con una struttura DLGTEMPLATE per formare un modello standard per una finestra di dialogo.
Sintassi
typedef struct {
DWORD style;
DWORD dwExtendedStyle;
short x;
short y;
short cx;
short cy;
WORD id;
} DLGITEMTEMPLATE;
Members
style
Tipo: DWORD
Stile del controllo. Questo membro può essere una combinazione di valori di stile finestra ( ad esempio WS_BORDER) e uno o più dei valori dello stile del controllo (ad esempio BS_PUSHBUTTON e ES_LEFT).
dwExtendedStyle
Tipo: DWORD
Stili estesi per una finestra. Questo membro non viene usato per creare controlli nelle finestre di dialogo, ma le applicazioni che usano i modelli di finestra di dialogo possono usarla per creare altri tipi di finestre. Per un elenco di valori, vedere Stili finestra estesi.
x
Tipo: breve
Coordinata x, nella finestra di dialogo unità, dell'angolo superiore sinistro del controllo. Questa coordinata è sempre relativa all'angolo superiore sinistro dell'area client della finestra di dialogo.
y
Tipo: breve
Coordinata y, nella finestra di dialogo unità, dell'angolo superiore sinistro del controllo. Questa coordinata è sempre relativa all'angolo superiore sinistro dell'area client della finestra di dialogo.
cx
Tipo: breve
Larghezza, in unità della finestra di dialogo, del controllo.
cy
Tipo: breve
Altezza, in unità della finestra di dialogo, del controllo.
id
Tipo: WORD
Identificatore del controllo.
Commenti
In un modello standard per una finestra di dialogo, la struttura DLGITEMTEMPLATE viene sempre seguita da tre matrici a lunghezza variabile che specificano la classe, il titolo e i dati di creazione per il controllo. Ogni matrice è costituita da uno o più elementi a 16 bit.
Ogni struttura DLGITEMTEMPLATE nel modello deve essere allineata a un limite DWORD . Le matrici di classi e titolo devono essere allineate ai limiti di WORD . La matrice di dati di creazione deve essere allineata a un limite WORD .
Immediatamente dopo ogni struttura DLGITEMTEMPLATE è una matrice di classi che specifica la classe della finestra del controllo. Se il primo elemento di questa matrice è qualsiasi valore diverso da 0xFFFF, il sistema considera la matrice come stringa Unicode con terminazione null che specifica il nome di una classe di finestra registrata. Se il primo elemento è 0xFFFF, la matrice ha un elemento aggiuntivo che specifica il valore ordinale di una classe di sistema predefinita. L'ordinale può essere uno dei valori atom seguenti.
Valore | Significato |
---|---|
0x0080 | Pulsante |
0x0081 | Modifica |
0x0082 | Static |
0x0083 | Casella di riepilogo |
0x0084 | Barra di scorrimento |
0x0085 | Casella combinata |
Seguendo la matrice di classi è una matrice di titolo che contiene il testo iniziale o l'identificatore della risorsa del controllo. Se il primo elemento di questa matrice è 0xFFFF, la matrice ha un elemento aggiuntivo che specifica un valore ordinale di una risorsa, ad esempio un'icona, in un file eseguibile. È possibile usare un identificatore di risorsa per i controlli, ad esempio controlli icona statici, che caricano e visualizzano un'icona o un'altra risorsa anziché testo. Se il primo elemento è qualsiasi valore diverso da 0xFFFF, il sistema considera la matrice come stringa Unicode con terminazione null che specifica il testo iniziale.
La matrice di dati di creazione inizia al limite word successivo dopo la matrice del titolo. Questi dati di creazione possono essere di qualsiasi dimensione e formato. Se la prima parola della matrice di dati di creazione non è zero, indica le dimensioni, in byte, dei dati di creazione (inclusa la parola dimensione). La procedura 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 che invia al controllo.
Se si specificano stringhe di caratteri nelle matrici di classi e titolo, è necessario usare stringhe Unicode. Usare la funzione MultiByteToWideChar per generare stringhe Unicode da stringhe ANSI.
I membri x, y, cx e cy specificano i valori nelle unità della finestra di dialogo. È possibile convertire questi valori in unità dello schermo (pixel) usando la funzione MapDialogRect .
Requisiti
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Intestazione | winuser.h (include Windows.h) |
Vedi anche
Informazioni concettuali
Altre risorse
Riferimento