Aide pour une ProgressBar

Résolu
Zayann Messages postés 75 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 15 juillet 2015 - 26 mars 2010 à 16:00
Zayann Messages postés 75 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 15 juillet 2015 - 29 mars 2010 à 09:13
Bonjour à tous...
J'ai un petit problème concernant l'utilisation d'une ProgressBar...
Explication :

A l'appui sur un bouton, je fait une liste des fichiers et sous dossier d'un emplacement X ou Y, puis j'affiche une messageBox avec un rapport sur ce que j'ai trouvé...
J'ai essayé d'afficher une progressbar pour indiquer que l'appli est en cours de traitement, mais évidemment ça ne marche pas...
En pseudo-code :

début Mon_Bouton.click
[list]
Affichage de la ProgressBar (.show)
appelle de procédure pour lister les fichiers et dossiers
affichage du rapport dans messageBox
masquage de la progressBar (.hide)
/list
fin Mon_bouton.click

Comme je ne connais pas à l'avance le temps d'exécution, ma progressbar a le style "marquee" (c'est à dire continu)...
la progressBar s'affiche bien à l'entrée dans le bloc mais,bien que la lecture de toute les information dure plusieurs secondes, le défilement ne s'affiche que lorsque le rapport est affiché, puis dès la fermeture de la messageBox elle est à nouveau masquée...

Si certain peuvent m'aider...
merci...

7 réponses

Zayann Messages postés 75 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 15 juillet 2015 1
29 mars 2010 à 09:13
Bon...
Le problème pour lequel j'avais ouvert ce topic étant résolu, je considère celui-ci comme fermé...
Concernant mon autre problème, je vais de ce pas en ouvrir un autre...
Merci à Claiyah pour son aide...
3
Claiyah Messages postés 580 Date d'inscription mercredi 20 août 2008 Statut Membre Dernière intervention 20 avril 2010 3
26 mars 2010 à 16:10
bonjour
tu liste les fichiers du répertoire donnée et les dossiers c'est tout ? tu liste pas les fichiers et dossiers contenu dans les sous dossier ?


Quand on pose une question on est con 5 minutes,Quand on ne la pose pas on le reste toute sa vie (mon site)
0
Zayann Messages postés 75 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 15 juillet 2015 1
26 mars 2010 à 16:23
La précision ne me semblai pas essentielle...
Mais en avant pour une explication complète...

Je liste effectivement tous les fichiers et dossiers et sous dossiers, etc...
L'appli a pour but de permettre une sauvegarde incrémentielle d'un nombre X de dossiers (avec tous ce qu'ils contiennent)...
le bouton me permet de faire une comparaison - avant la sauvegarde proprement dite - et d'afficher le nombre de nouveaux dossiers, nouveau fichiers et fichier à mettre à jour...

J'ai fait une erreur dans le pseudo-code juste au dessus. le rapport est en fait affiché en fin de fonction qui liste et compare les fichiers et dossier...
Je vais éditer le code...

Voila...
0
Claiyah Messages postés 580 Date d'inscription mercredi 20 août 2008 Statut Membre Dernière intervention 20 avril 2010 3
26 mars 2010 à 16:35
La précision ne me semblai pas essentielle...


oh que si, je t'ai demandé sa parce que avec FileSystemObject tu peut directement récupérer le nombre de fichier dans un dossier sans avoir à le parcourir, et a partir de ce nombre tu peut faire ta progressbar par-contre comme tu va parcourir les sous dossier je te conseil de chercher que les dossier et utiliser FileSystemObject pour récupérer le nombre de fichier puis tu prend leur nombre comme nombre max de la progressbar et la tu commence à lister les fichiers de tout les répertoires trouvée.

Quand on pose une question on est con 5 minutes,Quand on ne la pose pas on le reste toute sa vie (mon site)
0

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

Posez votre question
Claiyah Messages postés 580 Date d'inscription mercredi 20 août 2008 Statut Membre Dernière intervention 20 avril 2010 3
26 mars 2010 à 16:36
La précision ne me semblai pas essentielle...


oh que si, je t'ai demandé sa parce que avec FileSystemObject tu peut directement récupérer le nombre de fichier dans un dossier sans avoir à le parcourir, et a partir de ce nombre tu peut faire ta progressbar par-contre comme tu va parcourir les sous dossier je te conseil de chercher que les dossier et utiliser FileSystemObject pour récupérer le nombre de fichier puis tu prend leur nombre comme nombre max de la progressbar et la tu commence à lister les fichiers de tout les répertoires trouvée.

Quand on pose une question on est con 5 minutes,Quand on ne la pose pas on le reste toute sa vie (mon site)
0
Zayann Messages postés 75 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 15 juillet 2015 1
26 mars 2010 à 16:53
En fait, je procède par plusieurs étapes...
1ère :
je charge une liste avec les dossiers "principaux" - sélectionnés par l'utilisateur - puis je récupère pour chaque dossier les sous dossiers qu'il contient grâce à "GetDirectories",je charge les sous dossiers dans cette même liste et ce jusqu'à ce que tous les dossiers, sous dossiers, etc... ait été balayés...

2ème :
A partir de chaque dossier contenu dans cette liste, je fait un "GetFiles" et je charge une liste des fichiers trouvés...

c'est pour cette raison que j'ai utilisé une progressbar en style "marquee" parce que je ne sait jamais le nombre de dossier ou de fichier exact...

Après la lecture, je fait du traitement sur les dossiers et fichiers trouvé (existent ils dans le dossiers de destination ?, sont ils à jour, etc...)

seulement ensuite j'affiche le rapport...

Voila
0
Zayann Messages postés 75 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 15 juillet 2015 1
27 mars 2010 à 22:40
Bon en cherchant, expérimentant,j'ai réussi à résoudre mon problème...
J'en ai un autre mais un bizarre...

Voila le code...
Try
System.IO.File.Copy(List_New_File(Index), Path)
Catch ex As Exception
Throw ex
Finally
ProgressBar1.PerformStep()
counter += 1
show_Percent.Text = Int(Counter * 100 / Total).ToString + " %"
End Try

Je fait une tentative d'écriture par "Try... Catch... Finally..."
pour chaque fichier et dossier concernés...
Mais le label "show_percent" n'affiche le pourcentage que lorsque la copie de tous les fichiers et dossier est terminé.
Et là, je ne voit pas pourquoi...

Help...
Please...
0
Rejoignez-nous