I. Introduction

Cette instruction très utilisée dans Visual Basic permet de poser une question à l' utilisateur au travers d' une boîte de dialogue.
Celle-ci peut être paramétrée en définissant le nombre de boutons poussoir, l' icône de la boîte et le bouton par défaut, c' est à dire celui qui sera enfoncé quant vous appuyez sur la touche "Entrée".
La syntaxe de l' instruction MsgBox est la suivante :

Variable = MsgBox("Message", Type, "Titre de la fenêtre")
  • Variable : Variable de type Entier(Integer) recevant la valeur du bouton.
  • Message : Chaîne de caractères affichée comme message dans la boîte de dialogue.
  • Type : Expression numérique qui contrôle les boutons et les icônes à afficher.
  • Titre : Expression chaîne affichée dans la barre de titre de la boîte de dialogue.

Le paramètre Type représente l'addition de plusieurs constantes intégrées de Visual Basic.

Pour répondre à la question posée, MsgBox est utilisée en Instruction lorsque la syntaxe utilisée n'attend pas une réponse du système par exemple :

Instruction :
MsgBox Message$, 16 Titre$ Dans ce cas nous avons utilisé une instruction de VB.

Fonction :
Dans le cas d' une fonction, (qui attend une réponse du système) nous écrirons :

 
Sélectionnez

T$ = "Attention"      'Titre du message
M$ = "Désirez-vous vraiment quitter le programme ?"      'Message à afficher

si votre message à afficher est plus long, vous pouvez utiliser la concaténation suivante,

 
Sélectionnez

M$ = M$ + " suite du message" (vous pouvez aussi utiliser le caractère "&" à la place du caractère "+")
Reponse% = MsgBox(M$, 4 + 32, T$)

et voici la réponse que vous pouvez éventuellement utiliser :

 
Sélectionnez

If Reponse% = 6 Then End      'Sortie du programme

J' utilise depuis Vb 3.0 la fonction précédente qui fonctionne sous toutes les versions connues à ce jour.
Nous allons les étudier en détail avec les tableaux suivants.

Les constantes pour les boutons :

Constante Chiffre Description
vbOKOnly 0 Affiche le bouton OK uniquement
vbOKCancel 1 Affiche les boutons Ok et Annuler
vbCancelRetryIgnore 2 Affiche les boutons Abandonner, Répéter et Ignorer
vbYesNoCancel 3 Affiche les boutons Oui, Non et Annuler
vbYesNo 4 Affiche les boutons Oui et Non
vbRetryCancel 5 Affiche les boutons Répéter et Annuler



Les constantes pour les icônes :

Constante Chiffre Description
vbCritical 16 Affiche l'icône message critique
vbQuestion 32 Affiche l' icône requête d' avertissement
vbExclamation 48 Affiche l'icône message d' avertissement
vbInformation 64 Affiche l'icône message d' information



Les constantes pour le bouton par défaut :

Constante Chiffre Description
vbDefaultButton1 0 Le premier bouton est le bouton par défaut
vbDefaultButton2 256 Le deuxième bouton est le bouton par défaut
vbDefaultButton3 512 Le troisième bouton est le bouton par défaut
vbDefaultButton4 768 Le troisième bouton est le bouton par défaut

Chaque bouton lorsqu'il est activé, renvoie une valeur que l'on pourra interpréter au travers de la variable.
Si vous ne mettez pas le paramètre "Type" l' instruction MsgBox n'affichera que le bouton "OK"


Les constantes renvoyées par MsgBox :

Constante Chiffre Description
vbOk 1 OK
vbCancel 2 Annuler
vbAbort 3 Abandonner
vbRetry 4 Réessayer
vbIgnore 5 Ignorer
vbYes 6 Oui
vbNo 7 Non


Le code suivant montre un exemple de paramétrage de boîte de dialogue MsgBox avec retour de valeur d' une variable

 
Sélectionnez
Private Sub Button_Supprime_Click ( )
Dim Sup
Sup = MsgBox("Veuillez confirmer la suppression du fichier", vbCritical + vbYesNo + 256, "Attention")
If Sup = vbYes Then
      MsgBox "Suppression confirmée"
End If
End Sub

Nous aurions pu écrire :

 
Sélectionnez
Sup = MsgBox("Veuillez confirmer la suppression du fichier", 16 + 4 + 256, "Attention")

Faites des essais avec toutes les combinaisons possibles ou bien téléchargez le module d' exemples qui vous permettra de constater de visu toutes les combinaisons possibles de MsgBox [ici]
Voici les fenêtres que vous devez obtenir :

Image non disponible   Image non disponible

Prochain tutoriel :

Les boîtes de dialogues de Windows