Bouton et textbox [Résolu]

Messages postés
7
Date d'inscription
mercredi 22 janvier 2014
Statut
Membre
Dernière intervention
22 janvier 2014
- - Dernière réponse : Cricri1670
Messages postés
32
Date d'inscription
samedi 15 décembre 2007
Statut
Membre
Dernière intervention
10 avril 2014
- 22 janv. 2014 à 18:29
Bonjour
je suis débutant en visual basic

je voudrais que mon texte change dans une textbox en cliquant sur un bouton
exemple quand je clique sur le bonton il me met "bonjour"
et quand je clique sur le meme bouton le texte change et me met "comment tu vas"
en vous remerciant d'avance
Afficher la suite 

13 réponses

Messages postés
32
Date d'inscription
samedi 15 décembre 2007
Statut
Membre
Dernière intervention
10 avril 2014
0
Merci
Bonjour,

Ton bouton a une propriété Text qui définit ce qui est affiché dedans. Il a un évènement Click qui définit le code qui doit être exécuté lorsque tu cliques dessus. Dès-lors, il te suffit d'associer au click une modification de la propriété Text.

Comment faire ? Accède au code de ton formulaire (click droit + Afficher le code). Cherche dans la liste déroulante en haut à gauche ton bouton. Tu auras dans la liste déroulante de droite les évènements associés à ton bouton. Tu sélectionne Click et l'IDE va te créer une procédure
Private Sub MonBouton_Click
End Sub


Tu insères dedans le code suivant :
MonBouton.Texte = "Comment vas-tu ?"


Ce code sera exécuté lors du click.

Tu as de nombreux exemples similaires dans le forum.

P.S. : J'ai laissé tomber VB6 pour VB.NET il y a quelques années. J'espère qu'il n'y a pas trop de différences...--
Cricri1670
Messages postés
32
Date d'inscription
samedi 15 décembre 2007
Statut
Membre
Dernière intervention
10 avril 2014
-
J'avais mal lu ta question.
Si tu veux basculer entre deux valeurs, tu peux effectivement utiliser la propriété Tag ou utiliser une condition du style de celle d'UCFOUTU sans passer par la propriété Tag :
If MonBouton.Text="Bonjour" Then MonBouton.Text="Comment ça va ?" Else MonBouton.Text="Bonjour"
Commenter la réponse de Cricri1670
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212
0
Merci
Bonjour,
on utilise par exemple tout simplement la propriété tag ...
Exemple :
Private Sub Command1_Click()
If Command1.Tag = "Bonjour" Then Command1.Tag = "comment ça va ?" Else Command1.Tag = "Bonjour"
Text1.Text = Command1.Tag
End Sub
Commenter la réponse de ucfoutu
Messages postés
7
Date d'inscription
mercredi 22 janvier 2014
Statut
Membre
Dernière intervention
22 janvier 2014
0
Merci
comment je peux faire pour le mettre
comme de 1 a 10 en remplacant les mots

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        If Button1.Tag = "1" Then Button1.Tag = "2" Else Button1.Tag = "1"
        TextBox1.Text = Button1.Tag
    End Sub
Commenter la réponse de nops2904
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212
0
Merci
1) Je n'ai pas vraiment compris ce q<ue tu veux dire.
Expose de manière plus détaillée.
2) tu es ici dans la section VB6 du forum.
Or, le code montré donne à penser que tu développes sous VB.Net et non VB6.
Qu'en est-il donc ? VB6 ou VB.Net ?

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
Commenter la réponse de ucfoutu
Messages postés
7
Date d'inscription
mercredi 22 janvier 2014
Statut
Membre
Dernière intervention
22 janvier 2014
0
Merci
désoler je suis en VB net mes je suis pas sur exactement je débute
le code la qui fonctionne
Private Sub Command1_Click()
  If Command1.Tag = "Bonjour" Then Command1.Tag = "comment ça va ?" Else Command1.Tag = "Bonjour"
  Text1.Text = Command1.Tag
End Sub


est ce qu'il est possible de mettre plusieurs mot comme
un - deux- trois - quatre - cinq ainsi de suite
Commenter la réponse de nops2904
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212
0
Merci
Le code que tu montres maintenant est du VB6, alors que celui montré dans ton précédent message est du VB.Net.
Il est important que tu nous dises sous quoi tu développes (syntaxes différentes entre les deux langages).
Commenter la réponse de ucfoutu
Messages postés
7
Date d'inscription
mercredi 22 janvier 2014
Statut
Membre
Dernière intervention
22 janvier 2014
0
Merci
desoler ocfoutu
je travail sur visual basic express 2010
ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212 -
Je déplace donc ta discussion et laisse la main à un vb.Nettiste (que je ne suis pas).
Pour ton info :
sous VB6, je m'y serais pris ainsi (exemple) :
Private Sub Command1_Click()
Static ou As Integer, toto
toto = Array("un", "deux", "trois", "quatre", "cing", "six")
Text1.Text = toto(ou)
ou = ou + 1
If ou > UBound(toto) Then ou = 0
End Sub
ce devrait être très facilement transposable en VB.Net
Commenter la réponse de nops2904
Messages postés
7
Date d'inscription
mercredi 22 janvier 2014
Statut
Membre
Dernière intervention
22 janvier 2014
0
Merci
merci ucfoutu
mes dis moi que viens faire toto la dedans
parce la je comprend plus de trop
ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212 -
toto, "là-dedans", est une variable que j'ai ainsi nommée. (Une variable Array)
Si tu n'aimes pas ce nom de variable, appelle-la donc Nabilla et remplace alors partout toto par Nabilla ! LOL
Commenter la réponse de nops2904
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212
0
Merci
Par ailleurs :
j'ai préféré m'en tenir à la "philosophie" de ton premier message (qui parlait de "mots")
Si l'on conservait par contre celle de ton second message, qui parle de nombres, on procèderait ainsi sous VB6 :
Private Sub Command1_Click()
Static ou As Integer, maxi As Integer
maxi = 20
ou = ou + 1
Text1.Text = ou
If ou = maxi Then ou = 0
End Sub

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
Commenter la réponse de ucfoutu
Messages postés
7
Date d'inscription
mercredi 22 janvier 2014
Statut
Membre
Dernière intervention
22 janvier 2014
0
Merci
je te remercie ucfoutu pour ton aide
j'ai refait le code mes il ne fonction pas
c'est au niveau de ARRAY
ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212 -
Il te faut transposer pour VB.Net ...
ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212 -
Lire ceci (entre autres) :
http://www.dotnetperls.com/array-vbnet
Commenter la réponse de nops2904
Messages postés
7
Date d'inscription
mercredi 22 janvier 2014
Statut
Membre
Dernière intervention
22 janvier 2014
0
Merci
ok je te remercie beaucoup
tu m'enlève une épine du pied

Bonne soirée
Commenter la réponse de nops2904
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212
0
Merci
Mets donc ici la solution VB.Net que tu retiens et clos ce sujet (un clic sur le tag "RESOLU" au niveau de ton tout premier message).
Commenter la réponse de ucfoutu
Messages postés
32
Date d'inscription
samedi 15 décembre 2007
Statut
Membre
Dernière intervention
10 avril 2014
0
Merci
Je reviens sur ton problème.

Tout d'abord, si tu débutes, je trouve que c'est mieux de le faire sous VB.NET qui est plus récent et puissant que VB6. Néanmoins, son approche nécessite d'ingurgiter quelques "philosophies" pour aider à en comprendre le fonctionnement. Tu peux commencer à lire ceci http://plasserre.developpez.com/cours/vb-net/ qui te permettra d'avancer à pas de géant.

Plus concrètement, si tu souhaites afficher une suite de nombres ou de textes, tu devras passer par l'utilisation de variables. Es-tu familier avec cette notion ?

Exemple avec des nombre (le plus simple)

Dim compteur As Integer=0

Dans l'évènement FormLoad :
MonBouton.Text = compteur.ToString

Dans l'évènement Click de ton bouton :

compteur += 1
MonBouton.Text = compteur.ToString

Explications : après avoir défini ta variable compteur à 0, tu affiche ce nombre sur ton bouton au chargement du formulaire et à chaque fois que tu cliques sur ton bouton, il augmente le compteur de 1 et affiche la nouvelle valeur.

Dis-moi si ce que je te dis est adapté à ton niveau et jette d'urgence un oeil au lien que je t'ai donné.

--
Cricri1670
Messages postés
32
Date d'inscription
samedi 15 décembre 2007
Statut
Membre
Dernière intervention
10 avril 2014
-
Si tu veux afficher des mots (un, deux, trois...), ça sera plus compliqué car VB ne connais pas le français... Ce sera à toi de définir une "collection" de tes mots et tu vas (si je ne me trompe pas) un peu vite...
Maîtrise d'abord les notions de variables, de membres de classes..... tout ce qui est expliqué dans le lien que je t'ai donné.
Commenter la réponse de Cricri1670