Condividi tramite


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 scelta rapida predefiniti.

Sintassi

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

Parametri

[in] lpmbp

Tipo: const LPMSGBOXPARAMS

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

Valore restituito

Tipo: int

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

Se in una finestra di messaggio è presente un pulsante di Annulla , la funzione restituisce il valore IDCANCEL se viene premuto il tasto ESC o se è selezionato il pulsante annulla . Se la finestra di messaggio non ha pulsante Annulla, la pressione di 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
È stato selezionato il pulsante interruzione .
IDCANCEL
2
È stato selezionato il pulsante Annulla .
IDCONTINUE
11
È stato selezionato il pulsante Continua .
IDIGNORE
5
È stato selezionato il pulsante Ignora .
IDNO
7
È stato selezionato il pulsante No (Nessuna ).
IDOK
1
È stato selezionato il pulsante OK .
IDRETRY
4
È stato selezionato il pulsante Riprova .
IDTRYAGAIN
10
È stato selezionato il pulsante Riprova .
IDYES
6
È stato selezionato pulsante Sì.

Osservazioni

Quando si usa una finestra di messaggio modale di sistema per indicare che il sistema è insufficiente in memoria, le stringhe a cui punta il lpszText e lpszCaption membri della struttura MSGBOXPARAMS non devono essere prelevati da un file di risorse, perché un tentativo di caricamento della 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 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

finestre di dialogo

MSGBOXPARAMS

MessageBox

MessageBoxEx

riferimento