Affichage dynamique dans une zone de text

basamir Messages postés 335 Date d'inscription vendredi 21 octobre 2005 Statut Membre Dernière intervention 8 mars 2008 - 8 avril 2007 à 16:24
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 - 9 avril 2007 à 08:20
bonjour,

je travaille sur un projet qui devrait me permettre d'afficher une information reçue d'un terminal en continue et dynamiquement "une fois cette valeur change au niveau du terminal, elle doit l'être aussi au niveau de ma zone de text"

voici le bout de code qui affecte à la zone de text la valeur reçue de mon terminal "après traitement biensur" :

Sub HandleInput(InBuff As String)
    
       Text1.Text = Text1.Text & CStr(InBuff) 'Right(poids, 5)
                        
      End Sub

le problème est que cette valeur ne change pas, et pourtant lorsque je compile pas à pas, la valeur de la zone de text change en fonction du changement de cette valeur au niveau du terminal!!!

Veuillez m'aider svp

Merci d'avance!

5 réponses

cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
8 avril 2007 à 17:11
De quelle façon appelles-tu cette fonction ? avec un Timer ?
C'est peut-être juste une question de raffraîchissement (?)
Est-ce que tu utilises DoEvents ?

MPi
0
basamir Messages postés 335 Date d'inscription vendredi 21 octobre 2005 Statut Membre Dernière intervention 8 mars 2008
8 avril 2007 à 18:03
non j'utilise ni timer ni deovents!!

juste j'afecte à ma zone de text  ce que je reçoit de ma fonction de traitement.
0
Flachy Joe Messages postés 2103 Date d'inscription jeudi 16 septembre 2004 Statut Membre Dernière intervention 21 novembre 2023 1
8 avril 2007 à 18:50
Donc c'est la fonction de traitement qui est appelée régulièrement et qui appelle ta fonction HandleInput ?
Es-tu sur que l'affichage de ta fenêtre est mis à jour ? (la "question de rafraichissement "de MPi )
Si tu utilise une boucle, c'est sans doute pas le cas. Tu as alors le choix entre ajouter un DoEvents dans la boucle ou utiliser un Timer à sa place.

Flachy Joe
0
basamir Messages postés 335 Date d'inscription vendredi 21 octobre 2005 Statut Membre Dernière intervention 8 mars 2008
8 avril 2007 à 18:57
j'ai essayé avec un timer mais j'ai pas su le faire :(
0

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

Posez votre question
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
9 avril 2007 à 08:20
Bonjour,
c'est immédiatement après :
    Text1.Text = Text1.Text & CStr(InBuff) 'Right(poids, 5)
que je te conseille d'ailleurs d'écrire plutôt ainsi (avec une textbox multiligne) :
    Text1.Text = Text1.Text & vbcrlf & CStr(InBuff) 'Right(poids, 5)
qu'il te faut écrire
    text1.selstart = len(text1.text)
    Doevents
0
Rejoignez-nous