Boîtes de dialogue

On peut distinguer :
1°) les boîtes de message servant à afficher une information quelconque.
2°) Les 5 boîtes de dialogue standards: Ouvrir, Enregistrer sous, Polices, Couleurs, Impression.

1 - Les boîtes de message

Une boîte de message peut être utilisée pour afficher un message d'information, une alerte en cas d'erreur etc...
Par exemple, supposons que le système vérifie une entrée de l'utilisateur et l'initialise dans une variable "Entrée". En cas d'erreur, par exemple si l'utilisateur n'a rien écrit, l'affichage de la boîte de message pourra se faire ainsi :
Info = "Vous devez entrer une valeur !"
If Texte.Length = 0 Then
  MessageBox.Show(Info, "Erreur de saisie",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
  txtMontant.Focus()
  Exit Sub
End If

On peut récupérer la réponse provenant d'une boîte de dialogue (initialisée avec plusieurs boutons) en utilisant des constantes Visual Basic :

Dim Réponse As String
Réponse = MessageBox.show(...
If Réponse = VbYes Then...

2 - La boîte 'Ouvrir'

Pour ouvrir un fichier, il faut utiliser la classe 'OpenFileDialog'.
Ses propriétés principales sont les suivantes :

InitialDirectory Chemin du dossier initial affiché dans la boîte de dialogue
Title Titre de la boîte
Filter Extension des fichiers acceptés
DefaultExt Extension par défaut
AddExtension Booléen indiquant si l'extension par défaut doit être automatiquement ajoutée à la fin du fichier quand l'utilisateur n'en indique pas
MultiSelect Booléen permettant la sélection de plusieurs fichiers
CheckFileExists Booléen indiquant si la boîte doit afficher un message d'avertissement quand l'utilisateur indique un fichier qui n'existe pas
FileName Chaîne contenant le chemin du fichier sélectionné avec son exension. Renvoie par défaut une chaîne vide
FileNames Tableau contenant le chemin des fichiers sélectionnés avec leur extension. Renvoie par défaut un tableau vide

Dans l'exemple ci-dessous, on ouvre une boîte de chargement acceptant uniquement des fichiers texte (txt) ou à extension ".peg". La sélection multiple est autorisée.
La liste des fichiers est affichée dans une boîte de message.

Dim dlg As New OpenFileDialog()
dlg.Title = "Ouvrir un fichier"
dlg.DefaultExt = "txt"
dlg.Filter = "fichier Texte|*.txt|fichier Pégase|*.peg"
dlg.Multiselect = True
dlg.ShowDialog()
Dim Fichier, Liste As String
For Each Fichier In dlg.FileNames
  Liste &= Fichier & vbCrLf
Next
MsgBox(Liste)

3 - La boîte 'Enregistrer sous'

Pour enregistrer un fichier, il faut utiliser la classe 'SaveFileDialog'.
Dim MonTexte As String = "Texte à enregistrer"
Dim dlg As New SaveFileDialog()
dlg.Title = "Enregistrer le fichier"
dlg.DefaultExt = "txt"
dlg.Filter = "fichier Texte|*.txt"
' Ouverture de la boîte
dlg.ShowDialog()
' Enregistrement du fichier
Dim sw As New StreamWriter(dlg.FileName, False,
System.Text.Encoding.Default)
sw.WriteLine(MonTexte)
sw.Close()

4 - La boîte de polices

Pour choisir une police de caractères et ses différents attributs, il faut utiliser la classe 'FontDialog'. Ses principales propriétés sont les suivantes :

Color définit la couleur par défaut et renvoie la couleur sélectionnée
Font définit la police par défaut et renvoie la police sélectionnée
MaxSize définit et renvoie la taille maximale de la police
MinSize définit et renvoie la taille minimale de la police
ShowColor Booléen indiquant si l'utilisateur peut modifier la couleur
ShowEffects Booléen indiquant si l'utilisateur peut définir les effets barré et souligné

Dans l'exemple ci-dessous, l'utilisateur peut modifier la couleur et les effets. La taille est limitée entre 11 et 14 points. La boîte est initialisée avec la police d'une étiquette (Label1) et les modifications sont affectées à cette même étiquette.
Dim dlg As New FontDialog()
dlg.ShowColor = True
dlg.ShowEffects = True
dlg.MinSize = 11
dlg.MaxSize = 14
dlg.Color = Label1.ForeColor
dlg.Font = Label1.Font
' Ouverture de la boîte
dlg.ShowDialog()
' Récupération des données
Label1.Font = dlg.Font
Label1.ForeColor = dlg.Color

5 - La boîte de couleurs

Pour choisir une couleur, il faut utiliser la classe 'ColorDialog'.
La boîte de couleurs se présente sous 2 formes; l'une simple contenant 48 couleurs pré-définies, l'autre complète permettant de définir exactement la teinte souhaitée.

AllowFullOpen Indique si le bouton "Définir les couleurs personnalisées" est disponible
FullOpen Définit si la boîte doit s'ouvrir en version simple ou complète
Color Définit la couleur affichée par défaut dans la boîte et renvoie la couleur sélectionnée

Dans l'exemple ci-dessous, on ouvre la boîte dans sa version complète en sélectionnant par défaut la couleur 'Salmon'.
La couleur sélectionnée est récupérée dans la variable 'MaCouleur'.
Dim dlg As New ColorDialog()
dlg.AllowFullOpen = True
dlg.Color = Color.Salmon
dlg.ShowDialog()
Dim MaCouleur As Color = dlg.Color

6 - La boîte d'impression

.



Statistiques :      Conformité :  Valid XHTML 1.1 © Christian Soulié
Dernière mise à jour le 10 avril 2010.
Contrôles -  Formatage des données