Condividi tramite


Stili finestra di dialogo

Nella tabella seguente sono elencati gli stili della finestra di dialogo che è possibile specificare quando si crea una finestra di dialogo. È possibile usare questi stili nelle chiamate alle funzioni CreateWindow e CreateWindowEx, nel membro di stile delle strutture DLGTEMPLATE e DLGTEMPLATEEX e nell'istruzione di una definizione di finestra di dialogo in un file di risorse.

Costante Descrizione
DS_3DLOOK
Obsoleta. Il sistema applica automaticamente l'aspetto tridimensionale alle finestre di dialogo create dalle applicazioni.
DS_ABSALIGN
Indica che le coordinate della finestra di dialogo sono coordinate dello schermo. Se questo stile non viene specificato, le coordinate sono coordinate client.
DS_CENTER
Centra la finestra di dialogo nell'area di lavoro del monitor che contiene la finestra del proprietario. Se non viene specificata alcuna finestra di proprietario, la finestra di dialogo viene allineata al centro nell'area di lavoro di un monitor determinato dal sistema. L'area di lavoro è l'area non nascosta dalla barra delle applicazioni o dalle barre delle applicazioni.
DS_CENTERMOUSE
Centra la finestra di dialogo sul cursore del mouse.
DS_CONTEXTHELP
Include un punto interrogativo nella barra del titolo della finestra di dialogo. Quando l'utente fa clic sul punto interrogativo, il cursore assume l'aspetto di un punto interrogativo con un puntatore. Se l'utente fa clic su un controllo nella finestra di dialogo, il controllo riceve un messaggio di WM_HELP . Il controllo deve passare il messaggio alla routine della finestra di dialogo, che deve chiamare la funzione usando il comando HELP_WM_HELP . L'applicazione della Guida visualizza una finestra popup che in genere contiene la Guida per il controllo.
Si noti che DS_CONTEXTHELP è solo un segnaposto. Quando viene creata la finestra di dialogo, il sistema verifica la presenza di DS_CONTEXTHELP e, se presente, aggiunge WS_EX_CONTEXTHELP allo stile esteso della finestra di dialogo. WS_EX_CONTEXTHELP non può essere utilizzato con gli stili WS_MAXIMIZEBOX o WS_MINIMIZEBOX .
DS_CONTROL
Crea una finestra di dialogo che funziona bene come una finestra figlio di un'altra finestra di dialogo, in modo analogo a una pagina in una finestra delle proprietà. Questo stile consente all'utente di tabularsi tra le finestre di controllo di una finestra di dialogo figlio, usare i tasti di scelta rapida e così via.
DS_FIXEDSYS
Fa sì che la finestra di dialogo usi il SYSTEM_FIXED_FONT anziché il SYSTEM_FONT predefinito. Si tratta di un tipo di carattere monospace compatibile con il tipo di carattere System nelle versioni a 16 bit di Windows precedenti alla 3.0.
DS_LOCALEDIT
Si applica solo alle applicazioni a 16 bit. Questo stile indirizza i controlli di modifica nella finestra di dialogo per allocare memoria dal segmento di dati dell'applicazione. In caso contrario, modificare i controlli allocano l'archiviazione da un oggetto memoria globale.
DS_MODALFRAME
Crea una finestra di dialogo con una cornice modale della finestra di dialogo che può essere combinata con una barra del titolo e un menu finestra specificando gli stili WS_CAPTION e WS_SYSMENU .
DS_NOFAILCREATE
Crea la finestra di dialogo anche se si verificano errori, ad esempio se non è possibile creare una finestra figlio o se il sistema non può creare un segmento di dati speciale per un controllo di modifica.
DS_NOIDLEMSG
Elimina WM_ENTERIDLE messaggi che il sistema altrimenti invia al proprietario della finestra di dialogo mentre viene visualizzata la finestra di dialogo.
DS_SETFONT
Indica che l'intestazione del modello di finestra di dialogo (standard o estesa) contiene dati aggiuntivi che specificano il tipo di carattere da utilizzare per il testo nell'area client e nei controlli della finestra di dialogo. Se possibile, il sistema seleziona un tipo di carattere in base ai dati del tipo di carattere specificati. Il sistema passa un handle al tipo di carattere alla finestra di dialogo e a ogni controllo inviandole il messaggio di WM_SETFONT . Per le descrizioni del formato di questi dati del tipo di carattere, vedere DLGTEMPLATE e DLGTEMPLATEEX.
Se non viene specificato né DS_SETFONTDS_SHELLFONT , il modello della finestra di dialogo non include i dati del tipo di carattere.
DS_SETFOREGROUND
Fa sì che il sistema usi la funzione SetForegroundWindow per portare in primo piano la finestra di dialogo. Questo stile è utile per le finestre di dialogo modali che richiedono un'attenzione immediata da parte dell'utente indipendentemente dal fatto che la finestra proprietaria sia la finestra in primo piano.
Il sistema limita i processi che possono impostare la finestra in primo piano. Per altre informazioni, vedere Primo piano e Finestre in background.
DS_SHELLFONT
Indica che la finestra di dialogo deve utilizzare il tipo di carattere di sistema. Il membro del carattere tipografico del modello della finestra di dialogo estesa deve essere impostato su MS Shell Dlg. In caso contrario, questo stile non ha alcun effetto. È inoltre consigliabile usare la risorsa DIALOGEX anziché la risorsa DIALOG. Per altre informazioni, vedere Tipi di carattere della finestra di dialogo.
Il sistema seleziona un tipo di carattere utilizzando i dati del tipo di carattere specificati nei membri pointize, weight e corsivo . Il sistema passa un handle al tipo di carattere alla finestra di dialogo e a ogni controllo inviandole il messaggio di WM_SETFONT . Per le descrizioni del formato dei dati del tipo di carattere, vedere DLGTEMPLATEEX.
Se non viene specificato né DS_SHELLFONT néDS_SETFONT , il modello della finestra di dialogo estesa non include i dati del tipo di carattere.
DS_SYSMODAL
Questo stile è obsoleto ed è incluso per la compatibilità con le versioni a 16 bit di Windows. Se si specifica questo stile, il sistema crea la finestra di dialogo con lo stile WS_EX_TOPMOST . Questo stile non impedisce all'utente di accedere ad altre finestre sul desktop.
Non combinare questo stile con lo stile DS_CONTROL .

Requisiti

Requisito Valore
Client minimo supportato
Windows 2000 Professional [solo app desktop]
Server minimo supportato
Windows 2000 Server [solo app desktop]
Intestazione
Winuser.h (include Windows.h)