Lister des fichiers et extraire le chemin d'acces avec une ProgressBar [Résolu]

Signaler
Messages postés
16
Date d'inscription
mardi 24 février 2009
Statut
Membre
Dernière intervention
4 novembre 2009
-
Messages postés
16
Date d'inscription
mardi 24 février 2009
Statut
Membre
Dernière intervention
4 novembre 2009
-
Bonjour a tous,

C'est mon premier post sur votre forum, car jusque là j'ai toujours trouvé mon bonheur. Mais là je suis un peu bloqué.
Donc pour résumer, j'ai fait une form avec une zone pour saisir un nom de dossier, avec le bouton associé cela me sort le nombre de fichiers et de sous-dossier.Ensuite je dois faire une moulinette qui me calcule la longueur du chemin d'accès pour chacun des fichiers trouvés. Et si celui ci dépasse 255 caractères, je copie le chemin dans une RichTextBox. Je souhaite afficher le progression de la moulinette grave à une progressbar. Dans un premier temps la progressbar fonctionnait mais soit tout etait rempli des le debut de la boucle ou a la fin. J'ai donc voulu mettre en place une thread dédiée pour le calcul mais je n'arrive plus à exporter mes longueurs de fichiers trop long. Bref je suis en peu perdu.

Merci

3 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
70
Salut
Plus une constatation qu'une question.
Si, au démarrage, tu connais le nombre de fichiers à lister, il te suffit de :
- Mettre en .Max de la ProgressBar ce nombre de fichiers
- compter les fichiers au fur et à mesure que tu les traites
- Après chaque traitement, incrémenter la .Value de la ProgressBar
Eventuellement, ajoute un Application.DoEvents pour le rafraichissement de la ProgressBar

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
16
Date d'inscription
mardi 24 février 2009
Statut
Membre
Dernière intervention
4 novembre 2009

Merci pour l'info, en fait je mets aussi a jour un label dans ma boucle pour savoir à quel fichier je suis rendu. J'ai donc ajouter label4.refresh() et ma barre se met aussi à jour.

Merci beaucoup.
Trop top.
Messages postés
16
Date d'inscription
mardi 24 février 2009
Statut
Membre
Dernière intervention
4 novembre 2009

Dans ton raisonnement, je n'ai pas besoin de passer par une autre thread. Cela a ete mon premier code mais j'ai l'impression que la boucle prend toutes les ressources et empeche la mise a jour de la progressbar.
Ma question est, l'Application.Doevents corrigerait il se probleme de MAJ ?

benoit