Condividi tramite


Funzione CreateDialogParamA (winuser.h)

Crea una finestra di dialogo senza modalità da una risorsa modello di finestra di dialogo. Prima di visualizzare la finestra di dialogo, la funzione passa un valore definito dall'applicazione alla routine della finestra di dialogo come parametro lParam del messaggio di WM_INITDIALOG. Un'applicazione può usare questo valore per inizializzare i controlli della finestra di dialogo.

Sintassi

HWND CreateDialogParamA(
  [in, optional] HINSTANCE hInstance,
  [in]           LPCSTR    lpTemplateName,
  [in, optional] HWND      hWndParent,
  [in, optional] DLGPROC   lpDialogFunc,
  [in]           LPARAM    dwInitParam
);

Parametri

[in, optional] hInstance

Tipo: HINSTANCE

Handle per il modulo che contiene il modello di finestra di dialogo. Se questo parametro è NULL, viene usato il file eseguibile corrente.

[in] lpTemplateName

Tipo: LPCTSTR

Modello della finestra di dialogo. Questo parametro è il puntatore a una stringa di caratteri con terminazione Null che specifica il nome del modello di finestra di dialogo o un valore intero che specifica l'identificatore della risorsa del modello di finestra di dialogo. Se il parametro specifica un identificatore di risorsa, la parola dell'ordine elevato deve essere zero e la parola con ordine basso deve contenere l'identificatore. È possibile utilizzare la macro MAKEINTRESOURCE per creare questo valore.

[in, optional] hWndParent

Tipo: HWND

Handle per la finestra proprietaria della finestra di dialogo.

[in, optional] lpDialogFunc

Tipo: DLGPROC

Puntatore alla routine della finestra di dialogo. Per altre informazioni sulla procedura della finestra di dialogo, vedere DialogProc.

[in] dwInitParam

Tipo: LPARAM

Valore da passare alla routine della finestra di dialogo nel parametro lParam nel messaggio di WM_INITDIALOG.

Valore restituito

Tipo: HWND

Se la funzione ha esito positivo, il valore restituito è l'handle di finestra nella finestra di dialogo.

Se la funzione ha esito negativo, il valore restituito è NULL. Per ottenere informazioni estese sull'errore, chiamare GetLastError.

Osservazioni

La funzione CreateDialogParam usa la funzione CreateWindowEx per creare la finestra di dialogo. CreateDialogParam quindi invia un messaggio di WM_INITDIALOG (e un messaggio di WM_SETFONT se il modello specifica lo stile DS_SETFONT o DS_SHELLFONT) alla routine della finestra di dialogo. La funzione visualizza la finestra di dialogo se il modello specifica lo stile WS_VISIBLE. Infine, CreateDialogParam restituisce l'handle di finestra della finestra di dialogo.

Dopo CreateDialogParam, l'applicazione visualizza la finestra di dialogo (se non è già visualizzata) usando la funzione ShowWindow. L'applicazione elimina definitivamente la finestra di dialogo usando la funzione DestroyWindow. Per supportare lo spostamento tramite tastiera e altre funzionalità della finestra di dialogo, il ciclo di messaggi per la finestra di dialogo deve chiamare la funzione IsDialogMessage .

Nota

L'intestazione winuser.h definisce CreateDialogParam come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows 2000 Professional [solo app desktop]
server minimo supportato Windows 2000 Server [solo app desktop]
piattaforma di destinazione Finestre
intestazione winuser.h (include Windows.h)
libreria User32.lib
dll User32.dll
set di API ext-ms-win-ntuser-dialogbox-l1-1-0 (introdotto in Windows 8)

Vedere anche

concettuale

CreateDialog

CreateDialogIndirect

CreateDialogIndirectParam

CreateWindowEx

DestroyWindow

finestre di dialogo

DialogProc

IsDialogMessage

MAKEINTRESOURCE

riferimento

ShowWindow

WM_INITDIALOG

WM_SETFONT