Funzione MessageBoxIndirectA (winuser.h)

Crea, visualizza e gestisce una finestra di messaggio. La finestra di messaggio contiene testo e titolo del messaggio definiti dall'applicazione, qualsiasi icona e qualsiasi combinazione di pulsanti di push predefiniti.

Sintassi

int MessageBoxIndirectA(
  [in] const MSGBOXPARAMSA *lpmbp
);

Parametri

[in] lpmbp

Tipo: const LPMSGBOXPARAMS

Puntatore a una struttura MSGBOXPARAMS contenente informazioni utilizzate per visualizzare la finestra di messaggio.

Valore restituito

Tipo: int

Se la funzione ha esito positivo, il valore restituito è uno dei valori seguenti della voce di menu.

Se in una finestra di messaggio è presente un pulsante Annulla , la funzione restituisce il valore IDCANCEL se viene premuto ESC o se è selezionato il pulsante Annulla . Se la finestra di messaggio non ha alcun pulsante Annulla , premere ESC non ha alcun effetto.

Se la memoria non è sufficiente per creare la finestra di messaggio, il valore restituito è zero.

Codice/valore restituito Descrizione
IDABORT
3
Il pulsante Interrompi è stato selezionato.
IDCANCEL
2
Il pulsante Annulla è stato selezionato.
IDCONTINUE
11
Il pulsante Continua è stato selezionato.
IDIGNORE
5
Il pulsante Ignora è stato selezionato.
IDNO
7
Il pulsante No è stato selezionato.
IDOK
1
Il pulsante OK è stato selezionato.
IDRETRY
4
È stato selezionato il pulsante Riprova .
IDTRYAGAIN
10
È stato selezionato il pulsante Riprova .
IDYES
6
Il pulsante è stato selezionato.

Commenti

Quando si utilizza una finestra di messaggio modale di sistema per indicare che la memoria del sistema è insufficiente, le stringhe a cui puntano i membri lpszText e lpszCaption della struttura MSGBOXPARAMS non devono essere ricavate da un file di risorse, perché un tentativo di caricare la risorsa potrebbe non riuscire.

Se si crea una finestra di messaggio mentre è presente una finestra di dialogo, usare un handle per la finestra di dialogo come parametro hWnd . Il parametro hWnd non deve identificare una finestra figlio, ad esempio un controllo in una finestra di dialogo.

Nota

L'intestazione winuser.h definisce MessageBoxIndirect 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 che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
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)

Vedi anche

Informazioni concettuali

Finestre di dialogo

MSGBOXPARAMS

MessageBox

MessageBoxEx

Riferimento