Funzione MsgBox (Visual Basic)

Aggiornamento: novembre 2007

Visualizza un messaggio in una finestra di dialogo e attende che l'utente scelga un pulsante, quindi restituisce un valore integer che indica il pulsante scelto dall'utente.

Public Function MsgBox( _
   ByVal Prompt As Object, _
   Optional ByVal Buttons As MsgBoxStyle = MsgBoxStyle.OKOnly, _
   Optional ByVal Title As Object = Nothing _
) As MsgBoxResult

Parametri

  • Prompt
    Obbligatorio. Espressione String che costituisce il messaggio visualizzato nella finestra di dialogo. La lunghezza massima di Prompt è di circa 1024 caratteri e dipende dalla larghezza dei caratteri utilizzati. Se Prompt è costituito da più righe, è possibile separare le righe utilizzando un carattere di ritorno a capo (Chr(13)), un carattere di avanzamento riga (Chr(10)) oppure una combinazione di caratteri di ritorno a capo/avanzamento riga (Chr(13) e Chr(10)) tra una riga e l'altra.

  • Buttons
    Facoltativo. Espressione numerica che indica la somma dei valori che specificano il numero e il tipo di pulsante da visualizzare, lo stile di icona da utilizzare, il pulsante che costituisce l'impostazione predefinita e la modalità della finestra di messaggio. Se Buttons viene omesso, il valore predefinito sarà zero.

  • Title
    Facoltativo. Espressione String visualizzata nella barra del titolo della finestra di dialogo. Se Title viene omesso, sulla barra del titolo verrà indicato il nome dell'applicazione.

Impostazioni

Nella tabella riportata di seguito sono indicati i valori dell'enumerazione MsgBoxStyle.

Membro

Valore

Descrizione

OKOnly

0

Verrà visualizzato solo il pulsante OK.

OKCancel

1

Verranno visualizzati i pulsanti OK e Annulla.

AbortRetryIgnore

2

Visualizza i pulsanti Interrompi, Riprova e Ignora.

YesNoCancel

3

Verranno visualizzati i pulsanti Sì, No e Annulla.

YesNo

4

Verranno visualizzati i pulsanti Sì e No.

RetryCancel

5

Verranno visualizzati i pulsanti Riprova e Annulla.

Critical

16

Verrà visualizzata l'icona del messaggio critico.

Question

32

Verrà visualizzata l'icona della richiesta di avviso.

Exclamation

48

Verrà visualizzata l'icona del messaggio di avviso.

Information

64

Verrà visualizzata l'icona del messaggio informativo.

DefaultButton1

0

Verrà impostato come predefinito il primo pulsante.

DefaultButton2

256

Verrà impostato come predefinito il secondo pulsante.

DefaultButton3

512

Verrà impostato come predefinito il terzo pulsante.

ApplicationModal

0

Applicazione di tipo modale. Per poter continuare a utilizzare l'applicazione corrente, l'utente dovrà rispondere al messaggio.

SystemModal

4096

Sistema di tipo modale. Tutte le applicazioni verranno sospese fino a quando l'utente non risponde alla finestra di messaggio.

MsgBoxSetForeground

65536

La finestra di messaggio verrà visualizzata in primo piano.

MsgBoxRight

524288

Il testo verrà allineato a destra.

MsgBoxRtlReading

1048576

Il testo dovrà essere letto da destra a sinistra (per le lingue ebraica e arabe).

I valori del primo gruppo (da 0 a 5) specificano il numero e il tipo dei pulsanti visualizzati nella finestra di dialogo. I valori del secondo gruppo (16, 32, 48, 64) descrivono lo stile dell'icona. Quelli del terzo (0, 256, 512) stabiliscono il pulsante predefinito. I pulsanti del quarto gruppo (0, 4096) impostano la modalità della finestra di messaggio e quelli del quinto specificano se la finestra di messaggio deve essere visualizzata in primo piano, nonché l'allineamento e la direzione del testo. Quando si sommano i numeri per determinare il valore finale dell'argomento Buttons, è possibile utilizzare un solo numero per ciascun gruppo.

Valore restituito

Costante

Valore

OK

1

Cancel

2

Abort

3

Retry

4

Ignore

5

Yes

6

No

7

Eccezioni

Tipo di eccezione

Numero di errore

Condizione

ArgumentException

5

Prompt non è un'espressione String oppure Title non è valido.

InvalidOperationException

5

Il processo non viene eseguito in modo interattivo con l'utente.

InvalidEnumArgumentException

5

Uno o più parametri non sono membri dell'enumerazione MsgBoxResult o MsgBoxStyle.

Se si esegue l'aggiornamento delle applicazioni Visual Basic 6.0 che utilizzano la gestione degli errori non strutturata, vedere la colonna "Numero di errore". È possibile confrontare il numero di errore con la Proprietà Number (oggetto Err). Se possibile, tuttavia, si consiglia di sostituire il controllo dell'errore con la procedura illustrata nella sezione Cenni preliminari sulla gestione strutturata delle eccezioni per Visual Basic.

Note

Se nella finestra di dialogo è visualizzato un pulsante Annulla, il tasto ESC avrà la stessa funzione del pulsante Annulla. Se nella finestra di dialogo è incluso un pulsante della Guida (?), significa che per tale finestra è disponibile la Guida sensibile al contesto anche se non verrà restituito alcun valore se non dopo che è stato scelto un altro pulsante.

Nota:

Se si desidera specificare ulteriori argomenti oltre al primo, è necessario utilizzare la funzione MsgBox in un'espressione. Se vengono omessi gli argomenti della posizione, sarà necessario mantenere la corrispondente virgola di delimitazione.

Nota:

La funzione MsgBox richiede UIPermission a livello SafeTopLevelWindows, che può influenzarne l'esecuzione in situazioni di attendibilità parziale. Per ulteriori informazioni, vedere Richiesta di autorizzazioni e UIPermission.

Esempio

Nell'esempio riportato di seguito la funzione MsgBox viene utilizzata per visualizzare un messaggio di errore critico in una finestra di dialogo che include i pulsanti Sì e No. Il pulsante No viene indicato come risposta predefinita combinando i valori delle costanti MsgBox in un'espressione numerica. In questo caso, la somma di 4 (la combinazione di pulsanti Yes/No), 16 (la finestra del messaggio critico) e 256 (il secondo pulsante come pulsante predefinito) produce un totale di 276. Il valore restituito dalla funzione MsgBox dipende dal pulsante scelto dall'utente: Yes restituisce un valore pari a 6, No restituisce un valore pari a 7.

Dim msg As String
Dim title As String
Dim style As MsgBoxStyle
Dim response As MsgBoxResult
msg = "Do you want to continue?"   ' Define message.
style = MsgBoxStyle.DefaultButton2 Or _
   MsgBoxStyle.Critical Or MsgBoxStyle.YesNo
title = "MsgBox Demonstration"   ' Define title.
' Display message.
response = MsgBox(msg, style, title)
If response = MsgBoxResult.Yes Then   ' User chose Yes.
   ' Perform some action.
Else
   ' Perform some other action.
End If

Requisiti

Spazio dei nomi:Microsoft.VisualBasic

**Modulo:**Interaction

**Assembly:**Visual Basic Runtime Library (in Microsoft.VisualBasic.dll)

Vedere anche

Riferimenti

Funzione InputBox (Visual Basic)