Ouvrir plusieurs instances d'un même thread

immerczeck Messages postés 27 Date d'inscription jeudi 2 septembre 2004 Statut Membre Dernière intervention 28 juin 2008 - 26 juin 2006 à 10:30
immerczeck Messages postés 27 Date d'inscription jeudi 2 septembre 2004 Statut Membre Dernière intervention 28 juin 2008 - 26 juin 2006 à 17:44
Bonjour!
mon problème est le suivant : à partir d'un thread, je voudrais créer "à l'infini" des instances d'une nouvelle fenêtre, chacune avec un titre différent.
Je pensais m'en sortir en faisant un tableau de Form mais apparemment le fait même de construire une Form dans un thread au sein d'une boucle fait planter la Form en question.

C'est sûrement simple à résoudre, mais je suis là dessus depuis un bout de temps, alors toute réponse est la bienvenue.

Merci!

Immerczeck

3 réponses

cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
26 juin 2006 à 11:23
Salut,
Ne pas créer des object (Control) dans des threads différents!
Ca apporte que des ennuis, et on peut toujours faire autrement. Sinon pour savoir comment manipuler des Control dans un thread différent de celui qui l'a créer, tu peux jeter un oeil sur ce très bon tuto de Mx.

<hr size= "2" /> VC# forever
=13319
0
immerczeck Messages postés 27 Date d'inscription jeudi 2 septembre 2004 Statut Membre Dernière intervention 28 juin 2008
26 juin 2006 à 12:00
Merci de votre réponse, cependant, le problème reste entier.
Peut-être quelques précisions:un thread surveille un port en mode synchrone, et je veux qu'à chaque fois qu'une certaine demande arrive, une nouvelle form s'ouvre.
A chacuns de mes essais, la Form s'ouvre bien, mais elle se bloque, ça doit venir de la boucle...
Mais comment faire? Peut-être en créant un évènement? Mais j'y ai encore jamais touché, je ne sais absolument pas comment cela fonctionne, étant encore débutant...

Merci de votre aide!
0
immerczeck Messages postés 27 Date d'inscription jeudi 2 septembre 2004 Statut Membre Dernière intervention 28 juin 2008
26 juin 2006 à 17:44
Bon j'ai essayé autre chose que le tableau de forms, j'ai créé une classe comportant une form.
A chaque itération, je  crée un nouvelle instance dans un arraylist, puis j'utilise un code du type

MaClasse conv = liste[count] as MaClasse;
conv.form.Show();

mais il ne se passe rien. Pourriez-vous m'aider?

Merci
0
Rejoignez-nous