Bonjour a tous.
Dans mon application je fais un transfer de fichier qui peut durer un
certain temps.
Je voudrai pouvoir afficher une bare de progression ou une animation pour
fair patienter ou pour bien montrer que le job tourne toujours.
quelle méthode me conseillez vous.?
D'avance merci de votre aide
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jérémy Jeanson
Bonjour
Réponse simple : Un bon vieux BackGroundWorker!
Tu as juste besoin d'une instance de BackGroundWorker avec 2 events (dowork et reportprogress, de tête, noms exactes à vérifier dans la MSDN) et l'autorisation d'annuler le job du backgroundworker. + bien entendu une petit animation (progressbar en boucle par exemple.
Mais c'est un peu barbare d'utliser le backgroundworker juste pour l'animation. Donc en fait personnellement, l'approche qui me semble la plus simple serrait d'utiliser de revoir ton code à la base et utiliser deux contrôles : - Un BackGround pour lancer ton transfert de fichier en mode asynchrone. - Un timer qui animera ta progressbar en boucle (ou tout autre control de ton choix).
-> Avant de lancer ton job en asynchrone tu lance le timer (et donc l'animation) et quand le job est fini, sur l'event de fin de job tu coupe le timer. simple et efficace :) -- Jérémy JEANSON MCP http://jeremy.blogdns.net
Bonjour
Réponse simple : Un bon vieux BackGroundWorker!
Tu as juste besoin d'une instance de BackGroundWorker avec 2 events
(dowork et reportprogress, de tête, noms exactes à vérifier dans la
MSDN) et l'autorisation d'annuler le job du backgroundworker. + bien
entendu une petit animation (progressbar en boucle par exemple.
Mais c'est un peu barbare d'utliser le backgroundworker juste pour
l'animation.
Donc en fait personnellement, l'approche qui me semble la plus simple
serrait d'utiliser de revoir ton code à la base et utiliser deux
contrôles :
- Un BackGround pour lancer ton transfert de fichier en mode asynchrone.
- Un timer qui animera ta progressbar en boucle (ou tout autre control
de ton choix).
-> Avant de lancer ton job en asynchrone tu lance le timer (et donc
l'animation) et quand le job est fini, sur l'event de fin de job tu
coupe le timer. simple et efficace :)
--
Jérémy JEANSON
MCP
http://jeremy.blogdns.net
Tu as juste besoin d'une instance de BackGroundWorker avec 2 events (dowork et reportprogress, de tête, noms exactes à vérifier dans la MSDN) et l'autorisation d'annuler le job du backgroundworker. + bien entendu une petit animation (progressbar en boucle par exemple.
Mais c'est un peu barbare d'utliser le backgroundworker juste pour l'animation. Donc en fait personnellement, l'approche qui me semble la plus simple serrait d'utiliser de revoir ton code à la base et utiliser deux contrôles : - Un BackGround pour lancer ton transfert de fichier en mode asynchrone. - Un timer qui animera ta progressbar en boucle (ou tout autre control de ton choix).
-> Avant de lancer ton job en asynchrone tu lance le timer (et donc l'animation) et quand le job est fini, sur l'event de fin de job tu coupe le timer. simple et efficace :) -- Jérémy JEANSON MCP http://jeremy.blogdns.net