Affiche de form dans une boucle

Résolu
mekhanik Messages postés 33 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 20 mai 2007 - 22 août 2005 à 17:06
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 - 22 août 2005 à 20:50
Voilà mon problème :


J'ai une form d'affichage de résultat. Cette form s'affiche par MaForm.show et le bouton suivant de la form déclenche MaForm.hide. Mon problème est que je veux afficher cette forme plusieurs fois dans une boucle en changeant le contenu de ces labels à chaque tour de boucle. Pour l'instant seul, les informations correspondant au dernier tour de boucle s'affiche, ou du moins la boucle ne stoppe pas son exécution avant la dernière itération donc si quelqu'un peut m'aider se serait cool.
Merci à vous.

4 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
22 août 2005 à 18:31
Utilise une feuille modale pour bloquer l'éxécution de ta boucle :



Private Sub Form_Load()

For i = 0 To 10 'debut de la boucle

form2.Label1.Caption = "from n°" & i ':)


form2.Show vbModal 'On fait apparaître la fenêtre une à la suite de
l'autre

Next i

End Sub

DarK Sidious

Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) : www.ProgOtoP.com/popapi/
3
cs_Unreal Messages postés 89 Date d'inscription vendredi 20 décembre 2002 Statut Membre Dernière intervention 26 mars 2006
22 août 2005 à 17:50
Voila je suis pas sur d'avoir tres bien compris ce que tu voulais mais je pense que cela pourais t'aider:

alors tu créée une form form2 avec un label label1.

dans form1:

Private Sub Form_Load()
Dim frm As Form2 'Declaration de la variable de la form
For i = 0 To 10 'debut de la boucle
Set frm = New Form2 'Creation d'une copie de Form2
frm.Label1.Caption = "from n°" & i ':)
frm.Show 'On fait apparaître la fenêtre
Next i
End Sub

'Cette fonction créé 10 copies de form2 et les affiche avec le numero de la form dans le label.

Voila. J'espere t'avoir un peu aidé et je te dis bon courage pour la suite !
a++ ;)
0
purplespot Messages postés 60 Date d'inscription mercredi 4 mai 2005 Statut Membre Dernière intervention 17 avril 2006
22 août 2005 à 20:04
As-tu pensé à faire un unload formX au lieu d'un formX.hide ?
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
22 août 2005 à 20:50
Le problème sera toujours le même : le problème des boucles, si on ne
les stoppe pas, elles vont continuer jusqu'à ce qu'elle soient finies,
donc si tu affiche toujours la même feuille sans la rendre modale, ca
va l'afficher autant de fois que la boucle le demande, et au final, tu
ne verra que le dernier affichage de la feuille.



Rendre la feuille modale permet justement de stopper l'éxécution d'une
boucle : tant que la feuille n'est pas fermée, la boucle ne continue
pas => ca affiche la feuille au fur et à mesure des action de
l'utilisateur.

DarK Sidious

Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) : www.ProgOtoP.com/popapi/
0
Rejoignez-nous