Probleme textbox [ Résolu ]

richard_10 Messages postés 23 Statut Membre -  
richard_10 Messages postés 23 Statut Membre -
Bonjour,

Je me trouve devant un probléme que je n'arrive pas à résoudre pour le moment :
Considérons une CommandButton et un TextBox, je veux transmettre des valeurs à partir de ma CommandButton vers le textbox.Enfin voilà un simple exemple :

Private Sub Command1_click()
dim i as integer
for i = 1 to 10
Text1.text = i
next i
End Sub

Résultat : le TextBox conserve que la dérniére valeur : 10 ,autrement dit : il y a un ecrasement des valeurs dans le Textbox

Qquestion : comment faire pour récupérer toutes les valeurs envoyées par la commandButton et cela sans ecrasement biensur :)
merci d'avance

6 réponses

Creutzou Messages postés 655 Statut Membre 30
 
Salut,

tu ne vois que la derniere valeur, c'est que le traitement est très rapide.
Ensuite pour ce que tu voudrais afficher soit un peu plus précis . tu voudrais que sur le bouton soit affiché "1 2 3 4 ... 10 " ?
Si oui, regarde avec ca ce que ca te donne :

Private Sub Command1_click()  
dim i as integer  
Test1.text = ""  
for i = 1 to 10  
Text1.text = Text1.text & " " & i  
next i  
End Sub   

Tout vient à point à qui sait attendre
0
richard_10 Messages postés 23 Statut Membre 3
 
Salut Creutzou,
Oui , c'etais exactement ce que je demandais et le résultat me satisfait bien , mais il me reste encore une petite chose à apprendre : je veux que ces valeurs soient distribuées par lignes.Je précise :
lors de l'éxécution du programme, j'ai obtenu comme résultat :
1 2 3 ... 10 , et puis comment faire pour les rendre :
1
2
...
10

PS : je sais que cela venir des propriétés du textbox mais je n'ai rien trouver.
voilà merci pour ta réponse
0
Creutzou Messages postés 655 Statut Membre 30
 
je vais te mettre sur la piste, mais te laisser chercher (pour te faire progresser et t'obliger a comprendre la logique, si vraiment tu ne vois pas, je te dirais)

dans l'exemple du dessus , nous avions une boucle qui allait de 1 à 10.

à chaque passage dans cette boucle, on afficher la valeur de la variable i dans ton texte box.

Or toi au debut, tu lui avait dis
textbox.text = i


i étant succesivement egale à 1 puis à 2 puis à 3 ... puis à 10. Ton texte affichait succesivement 1 puis 2 puis 3 etc...

la petite modif que j'y ai apporté

Text1.text = Text1.text & " " & i  


veut dire : " tu prends tout le texte de text1 et tu lui ajoute un espace puis la valeur de i"

ce qui nous a donné logiquement : " 1 2 3 4 5 6 7 8 9 10"

donc si tu veux que chaque numero soit à la ligne, je te laisse chercher ce qu'il faut remplacer , et par quoi.

Voili voilou
0
richard_10 Messages postés 23 Statut Membre 3
 
Merci pour l'explication, j'ai carrément ignoré cette logique là , parce que le mot débutant que j'ai marqué dans le titre désigne seulement ma situation en VB , mais pas dans d'autres langages . En tout cas la solution que j'ai pu trouver et la suivante :
Private sub ....

Textbox = Textbox & "" & i & vbCrLf

end sub

et sa donne bien le bon résultat!

j'ai remarqué également qu'on pourra utilisé l'instruction Chr(13) + Chr(10) qui retourne la valeur correspondante au code ASCII, et là en ajoutant les deux valeurs obtenues , on aura alors un retour à la ligne

Finallement, merci bien à toi car tu m'as aider .
bonne soirée
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Creutzou Messages postés 655 Statut Membre 30
 
pour un truc un peu plus propre tu peux te passer des "" ce qui te donerais donc

Private Sub Command1_click()  

    dim i as integer  
    Test1.text = ""  
    for i = 1 to 10  
         Text1.text = Text1.text & i & vbCrLf 
    next i  
End Sub   
0
richard_10 Messages postés 23 Statut Membre 3
 
c'est réglé , merci encore
0