Boucle For ... Ne Repond pas !

Résolu
scottmat Messages postés 438 Date d'inscription samedi 24 mai 2003 Statut Membre Dernière intervention 23 janvier 2011 - 7 mai 2008 à 16:03
scottmat Messages postés 438 Date d'inscription samedi 24 mai 2003 Statut Membre Dernière intervention 23 janvier 2011 - 7 mai 2008 à 17:13
Bonjours à tous,



<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>




 



Voila depuis quelques temps j’ai ce problème sans être un problème… enfin c’est toujours agaçant.



J’utilise une boucle For sur un datagridview et quand il y’a un certain nombre d’éléments à analyser et que l’utilisateur à le malheur de cliquer n’ importe où dans mon application, Windows détecte que mon application ne répond pas !



Alors qu’elle répond parfaitement et si on ne met pas fin à son processus il finit sa boucle mais on ne voit rien puisque Windows croit qu’elle plante et elle grise mon appli.



J’ai une Form qui s’affiche par-dessus avec une progressbar pour voir l’avancement de la boucle, j’ai beau mettre MaForm.update ou MaForm.Refresh sa ne change rien du tout :(



Avez-vous une solution, une idée ?



Merci d’avance ;)

3 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
7 mai 2008 à 16:05
Met un (ou plusieurs suivant la complixité de la boucle) Application.DoEvents dans ta boucle, pour que l'écran puisse prendre la main et se rafraichir

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
3
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
7 mai 2008 à 16:22
Bonjour

Quand tu doit attaquer un grand nombre d'élément, préfère passer dirtectement sur la source de données, cela te permettra d'aller plus vite (j'ai fait le test, le rapport est d'environ de 100, 20 s contre 200 ms)  et éventuellement d'utiliser un Thread.

Le fer à souder a besoin d'une panne pour fonctionner.
VB (6, .NET1&2), C++, C#.Net1
Mon site
0
scottmat Messages postés 438 Date d'inscription samedi 24 mai 2003 Statut Membre Dernière intervention 23 janvier 2011 1
7 mai 2008 à 17:13
Merci tous les deux pour vos réponses hyper rapides.

NHenry : mon datagridview n'est pas relié à BDD.

casy : sa marche à merveille, nickel !

Encore un grand merci ;)
0
Rejoignez-nous