Inter thread

solid_sneak06 Messages postés 5 Date d'inscription samedi 20 mai 2006 Statut Membre Dernière intervention 4 mars 2009 - 4 mars 2009 à 16:30
lesdis Messages postés 403 Date d'inscription mercredi 19 avril 2006 Statut Membre Dernière intervention 7 août 2020 - 4 mars 2009 à 17:16
Bonjour,
S'il vous plais j'ai besoin d'aide.
Comment faire pour modifier la valeur d'un textbox à partir d'une thread??? j'arrive pas à comprendre comment ca marche, je pense qu'il faut que j'utilise delegate et invoke mais depuis ce matin j'arrive pas. Est ce que quelqu'un peut m'aider et me dire quels sont les instruction qu'il faut mettre.
merci.

2 réponses

lesdis Messages postés 403 Date d'inscription mercredi 19 avril 2006 Statut Membre Dernière intervention 7 août 2020
4 mars 2009 à 17:15
Bonjour,

Effectivemment, tu ne peux pas accéder à un textbox si il se trouve sur un thread différent de celui sur lequel tu travailles. Il faut utiliser la méthode invoke qui permet de passer de l'un à l'autre.

Un petit exemple :

Private delegate sub _Affichage(Texte as string)

Private Sub Main_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

dim MyThread as new threading.thread(adressof Depart)

end sub

Private sub Depart()
Me.invoke(new _Affichage(adressof Affichage),"Hello World")
End sub

private sub Affichage(Byval Texte as String)
Textbox1.text = texte
End sub

Tout est fait de tête, il se peut qu'une erreur se soit glisser dedans

Bonne Prog
lesdis Messages postés 403 Date d'inscription mercredi 19 avril 2006 Statut Membre Dernière intervention 7 août 2020
4 mars 2009 à 17:16
Dans le load, ne pas oublier de démarrer le thread

MyThread.start()

Bonne Prog
Rejoignez-nous