Progress bar avec visual c++ 6.0

Signaler
Messages postés
1
Date d'inscription
mercredi 27 septembre 2006
Statut
Membre
Dernière intervention
26 avril 2007
-
Messages postés
793
Date d'inscription
mardi 8 juillet 2003
Statut
Membre
Dernière intervention
10 février 2021
-
Bonjour,

Je suis en train de développer un programme qui permettre de transformer des fichiers ASCII en des fichiers d'un format spécifique. J'ai une une boite de dialogue qui permet de choisir le fichier à transformer et le répertoire où sera enregistré le fichier de nouveau format. Cette boite disparait une fois la sélection est faite. Et la transformation se déroule. La transformation est longue (environ 10 mns), pour cette raison, j'aimerais afficher une autre boite de dialogue contenant une barre de progression pour pouvoir connaitre l'avancement.
J'ai cherché beaucoup d'exemples sur net mais aucun me permettre de comprendre comment ça fonctionne.
Comme le traitement du fichier est fait ligne par ligne. J'ai essayé d'utiliser la méthode SetRange(0, tailleDuFichier), en suite, pour chaque traitement, je fais un StepIt() et SetPos(fichier.tellg()).
Mais rien ne marche!! :(
Ca fait une semaine que je suis dessus mais toujours pas de résultats !!!!!
Si vous pouvez m'aider, ce sera un grand secours.
Merci beaucoup.

3 réponses

Messages postés
97
Date d'inscription
dimanche 6 juillet 2003
Statut
Membre
Dernière intervention
20 janvier 2008

Salut !
Si tu utilises les api win32,
il te faut envoyer le message PBM_SETRANGE pour initialiser les valeurs min et max,  
et PBM_SETPOS pour mettre à jour la position avec la valeur désirée.
Utilise SendMessage pour envoyer ces messages.

Je te laisse consulter la msdn pour les détails.

si la transformation est trop couteuse en temps CPU, utilise un 2e thread pour ta transformation ou ta boite de dialogue.

Bonne prog !
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
29
C'est des fichiers de combien de Go ???

ciao...
BruNews, MVP VC++
Messages postés
793
Date d'inscription
mardi 8 juillet 2003
Statut
Membre
Dernière intervention
10 février 2021
8
as-tu mis une thread pour ton traitement sinon il faut implanter une fonction de rafraichissement de la progress bar ( loop avec peekmessage=

louis14