jeudi 13 juin 2013

Forms modaux et non modaux

A modal de est celui qui doit être traitée avant que l'utilisateur peut continuer. Un exemple est la boîte de dialogue Modifier la casse dans Microsoft Word. Si vous essayez de cliquer loin de la boîte de dialogue, vous aurez ici un bip pour indiquer une erreur. Jusqu'à ce que vous cliquez sur le bouton OK Annuler ou, le programme ne vous laissera pas cliquer n'importe où ailleurs.
La seconde forme que vous avez juste créé s'appelle une forme modale. Ce sont des formes que peuvent être masqués ou envoyé à la barre des tâches. Vous pouvez ensuite revenir à la forme ou le programme principal et faire des choses avec elle.
Un formulaire modal est parfois appelé une boîte de dialogue. Et nous allons voir comment créer un de ces maintenant.
Ajoutez un deuxième bouton à votre Form1. Changez la propriété Nom de la nouvelle touche pour btnDialogueBox. Double-cliquez sur le nouveau bouton et ajoutez le code suivant:

FrmDialogue As New frmSecond
frmDialogue.ShowDialog ()
Pour afficher un formulaire comme une boîte de dialogue modale, vous utilisez la méthode ShowDialog. Si vous utilisez la méthode Show, le formulaire est affiché comme une forme modale.
Exécutez votre programme. Cliquez sur votre nouveau bouton, et le second formulaire doit afficher. Déplacez-le sur le chemin et essayer de cliquer sur un bouton sur Form1. Vous ne serez pas en mesure d'. La deuxième forme doit être traitée avant que vous puissiez accéder à Form1.
Quand la forme est une boîte de dialogue modale, vous pouvez créer des boutons OK et Annuler pour elle. VB.NET dispose alors d'un tour dans son sac pour ces types de boutons d'. Nous verrons bien ce truc maintenant.

Boutons OK et Annuler

Dans l'environnement de conception, cliquez sur l'onglet de votre frmSecond. Lorsque le formulaire est affiché dans la fenêtre de conception, ajoutez deux boutons pour elle (Assurez-vous d'ajouter des boutons à la seconde forme et PAS Form1). Modifier la propriété Name du premier bouton à btnOk, et la propriété Name de la deuxième à btnCancel. Double-cliquez sur le bouton OK et ajoutez le code suivant à elle:
Me.DialogResult = DialogResult.OK
Le mot me renvoie à la forme actuelle. Lorsque vous tapez un arrêt complet, sélectionnez DialogResult dans la liste pop up qui apparaît. DialogResult est une propriété du formulaire. Il peut accepter une plage de valeurs. Dès que vous tapez un espace après le signe égal, vous verrez une liste de ces valeurs sur elle (VB NET 2008 uniquement en VB 2010, vous devez taper le DialogResult.):
La liste des DialogResults
Comme vous pouvez le voir, VB NET 2008, l'un de ces valeurs est DialogResult.OK. Cela indique que vous voulez utiliser ce bouton comme un bouton OK. Lorsque le bouton est cliqué, VB.NET retournera un résultat de OK pour ce bouton.
En VB NET 2010 Type DialogResult après le signe égal. Tapez un point et vous aurez la place de l'image ci-dessus:
Accéder au code de votre bouton Annuler et ajoutez la ligne suivante:
Me.DialogResult = DialogResult.Cancel
Pour le bouton Annuler, nous sommes en train de sélectionner DialogResult.Cancel de la liste. Lorsque le bouton est cliqué, VB.NET retournera un résultat de Cancel pour ce bouton.
Vous pouvez tester pour voir ce que la valeur est stockée dans Me.DialogResult. Mais vous faites cela à partir de la touche qui affiche le formulaire Form1 pour nous.
Donc accéder à votre code Form1, et de localiser les lignes qui affichent la seconde forme. Les deux lignes doivent être celles-ci:
FrmDialogue As New frmSecond
frmDialogue.ShowDialog ()
Modifier la deuxième ligne à ceci:
Si frmDialogue.ShowDialog () = DialogResult.OK ensuite
MsgBox ("Bouton OK cliqué")
End If
Pour obtenir la valeur du bouton cliqué, vous tester pour voir quel résultat la propriété ShowDialog est. Si la propriété ShowDialog de ​​frmDialogue est OK, alors vous pouvez exécuter le code qui doit s'exécuter. Si le bouton Annuler a été cliqué, cependant, vous n'avez pas à faire quoi que ce soit: VB.NET aura de la fermeture de votre boîte de dialogue modale pour vous!
Exécutez votre programme et le tester. Cliquez sur le bouton pour faire apparaître votre boîte de dialogue modale. Cliquez sur le bouton OK, et vous devriez voir l'affichage de la boîte de message. Apportez la boîte de dialogue modale une deuxième fois, puis cliquez sur le bouton Annuler. Le formulaire sera simplement fermer.
Dans la prochaine partie, nous verrons comment retourner des valeurs d'une seconde forme.

0 commentaires:

Enregistrer un commentaire