Condividi tramite


Funzione MessageBoxExA (winuser.h)

Crea, visualizza e gestisce una finestra di messaggio. La finestra di messaggio contiene un messaggio e un titolo definiti dall'applicazione, oltre a qualsiasi combinazione di icone predefinite e pulsanti di scelta. I pulsanti si trovano nella lingua dell'interfaccia utente di sistema.

Attualmente MessageBoxEx e MessageBox funzionano allo stesso modo.

Sintassi

int MessageBoxExA(
  [in, optional] HWND   hWnd,
  [in, optional] LPCSTR lpText,
  [in, optional] LPCSTR lpCaption,
  [in]           UINT   uType,
  [in]           WORD   wLanguageId
);

Parametri

[in, optional] hWnd

Tipo: HWND

Handle per la finestra del proprietario della finestra di messaggio da creare. Se questo parametro è NULL, la finestra di messaggio non ha una finestra di proprietario.

[in, optional] lpText

Tipo: LPCTSTR

Messaggio da visualizzare.

[in, optional] lpCaption

Tipo: LPCTSTR

Titolo della finestra di dialogo. Se questo parametro è NULL, viene usato il titolo predefinito Error .

[in] uType

Tipo: UINT

Contenuto e comportamento della finestra di dialogo. Per informazioni sui flag supportati, vedere MessageBox.

[in] wLanguageId

Tipo: WORD

Lingua del testo visualizzato nei pulsanti della finestra di messaggio. Se si specifica un valore pari a zero (0) viene indicato per visualizzare il testo del pulsante nella lingua predefinita del sistema. Se questo parametro è MAKELANGID(LANG_NEUTRAL, SUBLANG_NEUTRAL), viene utilizzata la lingua corrente associata al thread chiamante.

Per specificare una lingua diversa dalla lingua corrente, utilizzare la macro MAKELANGID per creare questo parametro. Per altre informazioni, vedere MAKELANGID.

Valore restituito

Tipo: int

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 avrà alcun effetto, a meno che non sia presente un pulsante MB_OK. Se viene visualizzato un pulsante MB_OK e l'utente preme ESC, il valore restituito sarà IDOK.

Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.

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

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 il sistema è insufficiente in memoria, le stringhe a cui puntano i parametri lpText e lpCaption non devono essere ricavate 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 MessageBoxEx 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

Requisito Valore
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

Vedi anche

Informazioni concettuali

Finestre di dialogo

MAKELANGID

MessageBeep

MessageBox

MessageBoxIndirect

Altre risorse

Riferimento

SetForegroundWindow