Deux petites choses qui peuvent également vous aider : les
MsgBox et les
InputBox.
Sur le côté droit, vous pouvez voir une
MsgBox sous sa forme la plus basique.
Et, juste en dessous, une
InputBox.
À quoi ça sert ?
Première question... Eh bien, diverses utilisations peuvent en être faites, puisqu'elles seront utilisables du côté visuel également.
Les
MsgBox peuvent signaler une erreur, demander une confirmation, etc. Les
InputBox, quant à elles, peuvent être utilisées dans des scores par exemple, pour demander le nom du joueur.
Beaucoup d'arguments existent pour les paramétrer, je vais vous les expliquer.
La MsgBox
Les paramètres
Voilà la liste des arguments. Pas de panique, il n'y en a que trois !
Je vais vous les décrire :
- Prompt : message qui apparaîtra dans la MsgBox.
- Buttons : type de boutons à utiliser (style de la boîte).
- Title : titre de la boîte.
Pour ce qui est du deuxième argument — les boutons à utiliser —, lorsque vous êtes sur le point d'entrer cet argument, une liste s'offre à vous : c'est cette liste qu'il vous faut utiliser pour trouver votre bonheur.
Voici divers exemples de style.
| Membre | Valeur | Description |
|---|
| OKOnly |
0 |
Affiche le bouton « OK » uniquement. |
| OKCancel |
1 |
Affiche les boutons « OK » et « Annuler ». |
| AbortRetryIgnore |
2 |
Affiche les boutons « Abandonner », « Réessayer » et « Ignorer ». |
| YesNoCancel |
3 |
Affiche les boutons « Oui », « Non » et « Annuler ». |
| YesNo |
4 |
Affiche les boutons « Oui » et « Non ». |
| RetryCancel |
5 |
Affiche les boutons « Réessayer » et « Annuler ». |
| Critical |
16 |
Affiche l'icône « Message critique ». |
| Question |
32 |
Affiche l'icône « Requête d'avertissement ». |
| Exclamation |
48 |
Affiche l'icône « Message d'avertissement ». |
| Information |
64 |
Affiche l'icône « Message d'information ». |
| DefaultButton1 |
0 |
Le premier bouton est le bouton par défaut. |
| DefaultButton2 |
256 |
Le deuxième bouton est le bouton par défaut. |
| DefaultButton3 |
512 |
Le troisième bouton est le bouton par défaut. |
| ApplicationModal |
0 |
L'application est modale. L'utilisateur doit répondre au message avant de poursuivre le travail dans l'application en cours. |
| SystemModal |
4096 |
Le système est modal. Toutes les applications sont interrompues jusqu'à ce que l'utilisateur réponde au message. |
| MsgBoxSetForeground |
65536 |
Spécifie la fenêtre de message comme fenêtre de premier plan. |
Les numéros indiqués correspondent aux
ID, que vous pouvez cumuler. En gros, si vous souhaitez que votre boîte bloque le système et que l'on doive y répondre avant de continuer, avec une icône « Message critique » et des boutons « OK − Annuler », il faut que vous tapiez… 4096 + 1 + 16 = «
4113 ».
Voici donc le code correspondant, les
Chr(13) représentant des retours à la ligne :
Code : VB.NET | MsgBox("Je suis une MsgBox qui bloque votre système tant que vous n'avez pas répondu" & Chr(13) & " J'ai l'icône d'une croix rouge (critical) et mes boutons sont : Ok / Annuler" & Chr(13) & "Je vous souhaite un agréable vol sur notre compagnie ...", 4113, "Ma boiboitte")
|
Cela donne ce résultat :
Pour le moment, c'est bon ?
Le retour
Passons à la valeur de retour !
Les boutons sur lesquels on clique ne renvoient pas tous la même valeur :
- OK → 1
- Cancel → 2
- Abort → 3
- Retry → 4
- Ignore → 5
- Yes → 6
- No → 7
Un petit
If devrait vous permettre d'effectuer une action précise en fonction de ce que l'utilisateur a entré !
InputBox
Les paramètres
Les arguments de l'
InputBox sont un peu moins ennuyeux...
Les arguments ne sont donc pas difficiles à retenir :
- Le Prompt, comme pour la MsgBox.
- Le titre de la fenêtre.
- La valeur par défaut entrée dans le champ à remplir.
- La position de la boîte en X.
- La position de la boîte en Y.
Comme vous pouvez le voir sur le dessin que j'ai fait (ou plutôt, essayé de faire...

), l'origine du repère se situe en haut à gauche. Si vous entrez « 0 » pour les positions X et Y, alors la boîte se retrouvera en haut à gauche ; pour la laisser centrée, ne mettez rien.
Le retour
Cette fois, la valeur de retour n'est pas forcément un nombre : cela peut être une chaîne de caractères ou toute autre chose que l'utilisateur a envie d'écrire.
Voilà pour les
Box, c'est fini !