Clic bouton afficher des textes différents
Résolu
foan
-
foan -
foan -
Bonjour,
Je suis encore novice à Visual Basic 2010 mais j'essaie de créer un programme.
J'ai un bouton, et une zone de texte. j'aimerais avoir la fonction suivante,
1er clic
afficher texte 1
2eme clic
afficher texte 2
cacher texte 1
3eme clic
afficher texte 3
cacher texte 2
etc
mais comment ? J'ai cherché sur google pendant des heures mais je n'ai rien trouvé, je suis vraiment desespéré à 200% s'il vout plait aidez-moi...
Si possible quel est le code?
Je suis encore novice à Visual Basic 2010 mais j'essaie de créer un programme.
J'ai un bouton, et une zone de texte. j'aimerais avoir la fonction suivante,
1er clic
afficher texte 1
2eme clic
afficher texte 2
cacher texte 1
3eme clic
afficher texte 3
cacher texte 2
etc
mais comment ? J'ai cherché sur google pendant des heures mais je n'ai rien trouvé, je suis vraiment desespéré à 200% s'il vout plait aidez-moi...
Si possible quel est le code?
1 réponse
-
C'est très simple.
Imaginons que tes textes doivent s'afficher dans une même textbox qui s'appellera textbox1
Tu vas sur l'onglet "Form1[design]", tu double-cliques sur le bouton de ta form (que tu as déjà créé j'imagine), tu te retrouves de nouveau sur le code, mais avec quelque part un truc qui ressemble à:
Private Sub button1_click (by val sender blablabla) button1.click
End Sub
C'est l'événement du bouton_click (c'est à dire ce qu'il doit se passer lorsque tu cliques sur button1): c'est là que l'on va taper la quasi-totalité de ton code. Mais d'abord, remonte tout en haut de ton code, en dessous de "public class form1" pour taper ceci:
Dim switchtext As Integer = 0
C'est une déclaration de variable, et comme tu l'as placé en dessous de public class, tu vas pouvoir l'utiliser dans toute la classe (quelque soit l'événement).
Ensuite, retour à tes premiers tutos de VB.net,dans l'événement que nous avons créé, tu tapes ceci:
switchtext += 1
If (switchtext = 1) Then
Textbox1.text = "Mets ici le texte à s'afficher au premier clic"
ElseIf (switchtext = 2) Then
Textbox1.text = "Et ici le texte à s'afficher au second clic"
ElseIf (switchtext = 3) Then
Textbox1.text = "Et ici le texte à s'afficher au troisième clic"
[...]
Et tu continues avec tes ElseIf jusqu'à arriver à ton dernier texte, pour le dernier texte tu tapes:
Else
TextBox1.text = "Le texte du dernier clic"
switchtext = 0
End If
Pour ensuite revenir au premier texte si la personne depasse le nombre de clic prévu...
La deuxième étape consiste à faire en sorte à ce que l'utilisateur ne puise en aucun cas modifier le texte que tu fais apparaître (ce serait dommage ^^)
Là tu as deux méthodes:
Soit tu écris en dessous de "public class" et de "Dim switchtext As Integer = 0" ceci:
TextBox1.ReadOnly = True
Mais ça fait un peu du code à la Conan the Barbarian... donc il y a plus simple
dans l'onglet Form1[design] tu fais un clic simple sur ta textbox et tu regardes en bas à droite de la fenêtre, il y a un tableau: ce sont les propriétés de ton objet. Elles sont toutes classées par ordre alphabétique, tu vas donc à ReadOnly (si tu connais l'aphabet, ça devrait pas être trop difficile :p) et tu lui attribues "true".
Et voilà! Testes en appuyant sur f5.
Mais tu voulais afficher tes textes dans des textbox différentes, t'as plus qu'à changer textbox1.text avec LeNomDeTaTextBox.Text et attribuer à toutes tes textbox le ReadOnly sur True.