Boucle For ... Ne Repond pas ! [Résolu]

scottmat 440 Messages postés samedi 24 mai 2003Date d'inscription 23 janvier 2011 Dernière intervention - 7 mai 2008 à 16:03 - Dernière réponse : scottmat 440 Messages postés samedi 24 mai 2003Date d'inscription 23 janvier 2011 Dernière intervention
- 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 ;)
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
cs_casy 7745 Messages postés mercredi 1 septembre 2004Date d'inscription 24 septembre 2014 Dernière intervention - 7 mai 2008 à 16:05
3
Merci
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

Merci cs_casy 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 92 internautes ce mois-ci

Commenter la réponse de cs_casy
NHenry 14277 Messages postés vendredi 14 mars 2003Date d'inscription 21 octobre 2018 Dernière intervention - 7 mai 2008 à 16:22
0
Merci
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
Commenter la réponse de NHenry
scottmat 440 Messages postés samedi 24 mai 2003Date d'inscription 23 janvier 2011 Dernière intervention - 7 mai 2008 à 17:13
0
Merci
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 ;)
Commenter la réponse de scottmat

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.