La macro DialogBox crea una finestra di dialogo modale da una risorsa modello di finestra di dialogo casella. DialogBox non restituisce il controllo fino a quando la funzione di callback specificato termina nella finestra di dialogo modale chiamando la funzione EndDialog . La macro DialogBox utilizza la funzione DialogBoxParam.
int (DialogBox HINSTANCE , hInstance, / / handle all'istanza dell'applicazioneLPCTSTRlpTemplate, / / identifica il modello di finestra di dialogo HWNDhWndParent, / / handle di finestra proprietariaDLGPROClpDialogFunc / / puntatore alla finestra di dialogo scatola procedura);
Se la funzione ha esito positivo, il valore restituito è il parametro di nResult nella chiamata alla funzione EndDialog utilizzata per chiudere la finestra di dialogo.
Se la funzione ha esito negativo, il valore restituito è – 1. Per ottenere informazioni di errore estese, chiamare GetLastError.
La macro DialogBox utilizza la funzione CreateWindowEx per creare la finestra di dialogo. DialogBox quindi invia un messaggio WM_INITDIALOG (e un messaggio WM_SETFONT) se il modello specifica lo stile DS_SETFONT la procedura di casella di dialogo. La funzione viene visualizzata la finestra di dialogo (a prescindere dal fatto se il modello specifica lo stile WS_VISIBLE), disattiva la finestra proprietaria e inizia il proprio ciclo di messaggi per recuperare e spedire messaggi per la finestra di dialogo.
Quando la procedura di casella di dialogo chiama la funzione EndDialog , DialogBox distrugge la finestra di dialogo, termina il ciclo di messaggi, consente la finestra proprietaria (se abilitato in precedenza) e restituisce il parametro nResult specificato dalla procedura di dialogo casella quando chiamato EndDialog.
Windows 95 e più tardi:Il sistema può supportare un massimo di 255 controlli al modello di finestra di dialogo. Per inserire più di 255 controlli in una finestra di dialogo, creare i controlli nel gestore dei messaggi WM_INITDIALOG anziché collocarli nel modello.
Windows CE: Non tutti gli stili sono supportati nella struttura DLGTEMPLATE nel modello di dialogo cui fa riferimento il parametro lpTemplate . .
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:Dichiarati in winuser.
Importare librerie:Utilizzare user32.lib.
Unicode:Implementato come versioni Unicode e ANSI su Windows NT.
Panoramica di finestre di dialogo, finestra di dialogo casella funzioni, CreateDialog, CreateWindowEx, DialogBoxIndirect, DialogBoxIndirectParam, DialogBoxParam, DialogProc, EndDialog, MAKEINTRESOURCE, WM_INITDIALOG, WM_SETFONT
Rimedio: Inserire il CD-ROM CD di MSDN Library.