Rafraichissement

scromania Messages postés 452 Date d'inscription dimanche 20 août 2006 Statut Membre Dernière intervention 11 janvier 2013 - 20 févr. 2012 à 18:10
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 - 21 févr. 2012 à 08:03
Bonjours,

j'ajoute dans une listview 33 000 item (sais variable),j'aimerai faire un rafraichissement de la form j'ai testé :

Application.DoEvents()
ou
Refresh()


sa fonctionne bien par contre le temps de la procédure et multiplier,je m 'explique en utilisant un des deux rafraichissement ci-dessus je met 15 minutes alors que sans le rafraichissement je met 22 secondes

Auriez-vous une explication?

Par avance merci.

7 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
20 févr. 2012 à 18:19
Bonjour,
Je ne comprends pas vraiment le problème.
C'est à quelle occasion, que tu veux ce rafraichissement forcé ? Pas à celle d'ajouts en boucle (des ajouts en bloc en général) et pendant les ajouts j'espère ? Car alors : c'est en effet comme au poker : on paye pour "voir".



____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
scromania Messages postés 452 Date d'inscription dimanche 20 août 2006 Statut Membre Dernière intervention 11 janvier 2013 9
20 févr. 2012 à 18:22
sa pendant la boucle...
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
20 févr. 2012 à 18:31
Alors, comme je te l'ai dit :
Car alors : c'est en effet comme au poker : on paye pour "voir".

Quel est donc l'intérêt de rafraichir pendant la boucle ? Je n'en vois aucun, personnellement.
J'irais même plus loin : on s'efforce même d'éviter les lenteurs d'affichage (tes 22 secondes sans le refresh !) en rendant carrément invisible le contrôle au début de la boucle puis en le rendant à nouveau visible une fois la boucle terminée. Une "philosophie" qui, comme tu le constates, est diamétralement opposée à ta "curieuse" (dans les 2 sens du terme) démarche !



____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
20 févr. 2012 à 18:47
Enfin quoi ===>> si c'est uniquement pour "rassurer" pendant la boucle ===>> un contrôle qui affiche l'avancement tous les 500 articles doit faire l'affaire, non ?
Et si en plus, tu connais le nombre d'itérations que va faire ta boucle, tu peux même afficher son pourcentage d'avancement (tous les x articles, par exemple).
Limite le nombre des affichages (l'affichage bouffe du temps).


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Profil bloqué
20 févr. 2012 à 19:03
il serait bon dans ce cas de faire fonctionner la listview en mode virtuel

La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.

GRENIER Alain
0
scromania Messages postés 452 Date d'inscription dimanche 20 août 2006 Statut Membre Dernière intervention 11 janvier 2013 9
21 févr. 2012 à 08:02
ecoute vous avez raison je vais définir à quel moment rafraichir
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
21 févr. 2012 à 08:03
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
Rejoignez-nous