Aller au contenu

Programmation Visual Basic .NET/Contrôles

Un livre de Wikilivres.

Comme son prédécesseur, Visual Basic .NET excelle à la création d'interfaces graphiques. En travaillant sur des formulaires, il suffit de faire glisser les contrôles désirés depuis la ToolBox, de changer leur taille et de les configurer via la fenêtre des propriétés. Le gestionnaire d'évènement de chaque contrôle renvoie à la fenêtre de code.

Contrôles visibles

[modifier | modifier le wikicode]

La TextBox affiche du texte, sa fenêtre propriété permet de changer de police de caractère, sa taille, couleur, etc.

Pour contrôler la validité d'un mot de passe, une TextBox doit contenir un caractère de masquage dans PasswordChar. On trouve généralement * ou ● mais toute lettre peut faire l'affaire.

La méthode TextBox.Copy() permet de remplir le presse-papier de l'utilisateur avec le contenu de la boite, et TextBox.Paste() d'en récupérer dedans (coller). TextBox.Cut coupe le texte de la TextBox dans le presse-papier.

Restreindre du texte

[modifier | modifier le wikicode]

Pour restreindre certains mots dans la TextBox il faut créer un gestionnaire d'évènement de KeyPress.

L'exemple suivant n'autorise que des chiffres (de 0 à 9), la virgule et le signe moins :

Private Sub SubName (ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
    Select Case Asc(e.KeyChar)
        Case 48 To 57, 8
        Case 45
            If InStr(sender.text, "-") <> 0 Or sender.selectionStart <> 0 Then
                e.Handled = True
            End If
        Case 46
            If InStr(sender.Text, ",") <> 0 Then
                e.Handled = True
            End If
        Case Else
            e.Handled = True
    End Select
End Sub

Les Labels affichent du texte non modifiable. Généralement, ils servent à décrire les autres contrôles du formulaire.

Les Buttons déclenchent une action prédéfinie quand on clique dessus.

Public Class Form1
    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        MsgBox("Bouton 1 pressé")
    End Sub
End Class

Une CheckBox indique un choix deux états (True/False) que l’utilisateur peut cocher ou décocher. Bien sûr le code peut modifier sur le titre de la boite selon sa valeur.

Public Class Form1
    Private Sub CheckBox1_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles CheckBox1.CheckedChanged
        If CheckBox1.Checked Then
            MsgBox("Case 1 cochée")
        End If
    End Sub
End Class

Le RadioButton permet d'effectuer un choix parmi une liste d'options.

Pour déclencher une action sur une case cochée :

Public Class Form1
    Private Sub RadioButton1_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles RadioButton1.CheckedChanged
        If RadioButton1.Checked Then
            MsgBox("Bouton 1 coché")
        End If
    End Sub

    Private Sub RadioButton2_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles RadioButton2.CheckedChanged
        If RadioButton2.Checked Then
            MsgBox("Bouton 2 coché")
        End If
    End Sub
End Class

Ce type de boite permet d'afficher avec openfile(Richtextbox1.openfile(CheminFichier)), ou de remplir via method(richtextbox1.savefile(CheminFichier)), le contenu d'un fichier texte.

Autres contrôles

[modifier | modifier le wikicode]

Certains contrôles sont stockés dans des sous-menus de la ToolBox.

Boîtes de dialogue

[modifier | modifier le wikicode]

Elles se placent sous le formulaire en mode design, et ne se voient pas en mode lecture.

OpenFileDialog

[modifier | modifier le wikicode]

Une OpenFileDialog régit le parcourt du disque pour ouvrir un fichier, sans ses propriétés.

SaveFileDialog

[modifier | modifier le wikicode]

Permet par exemple de prédéfinir une extension de la sauvegarde des fichiers.

Liste des polices de caractères disponibles dans les boites texte de l'utilisateur.