ProgressBar et thread

Résolu
info19 Messages postés 16 Date d'inscription lundi 27 septembre 2010 Statut Membre Dernière intervention 28 décembre 2012 - 5 avril 2012 à 14:42
info19 Messages postés 16 Date d'inscription lundi 27 septembre 2010 Statut Membre Dernière intervention 28 décembre 2012 - 21 avril 2012 à 22:44
slt
j'ai une question, comment puisse je programmer un progress bar avec une durée non défini, comme lors de l’exécution d'un algorithme de résolution d'un problème np-complet, exp, le problème des n-reines (csp) ,lorsque n= 20 le temps et tres grand, et inconnu initialement, et je veux que lorsque mon programme me donner toutes les solutions possible, le progresse bar s y compléter
je pense qu'il faut utiliser les threads, mais je suis vraiment débutante avec cette notion

je veux que lorsque je lance mon application - resolution de brobleme de n-reine- une fenetre jframe qui contient un progress bar s y affichée et lorsque le traitement se termine apres un temps non defini initialement, le progress bar s y completer et la fenetre se cache

si j'ai reussi a faire ca , je vais ajouter par la suite un bouton pour arreter le traitement - mais ça est optionnel pour le momment

j'espere que ma question est clairte, et parodon pour mon francais qui n'et pas bien

merci pour votre aide
A voir également:

5 réponses

cormandyr Messages postés 600 Date d'inscription samedi 20 mai 2006 Statut Membre Dernière intervention 8 juillet 2016 11
6 avril 2012 à 08:36
Salut,

en effet, il vaut mieux utiliser deux thread pour faire ce que tu demandes...
comme ça, je te dirai d'avoir la progressBar dans ta thread principale (celle de ton application) et après avoir initialiser ta fenêtre, tu lance la deuxième (celle de calcul).

Bon la progressBar:
moi je suis plus axé SWING, donc j'utilise des JProgressBar qui ont une méthode setIndeterminate(boolean). Si tu mets true, il aura le comportement que tu demandes (en gros, pas d'information de progression pour le moment...)

les Thread:
Après avoir initialiser ton GUI, tu lances ta deuxième thread comme ceci par exemple:
new Thread(new ComputingClass()).start();

et ta class de calcul (ComputingClass), qui va donc faire le calcul que tu veux doit implémenter l'interface Runnable. Plus précisément, le code de calcul devra être dans la méthode run()...
3
cormandyr Messages postés 600 Date d'inscription samedi 20 mai 2006 Statut Membre Dernière intervention 8 juillet 2016 11
11 avril 2012 à 08:11
Je ne suis pas bon pédagogue ^^
j'avoue qu'il m'est difficile d'avoir un exemple plus simple pour démarrer une nouvelle thread que:
new Thread(new Runnable(){
   public void run() {/* code à exécuter dans la nouvelle thread. */ }
}).start();


si jamais, il y a un tutoriel sur code source. Et je peux toujours tenter de répondre s'il y a un soucis...
3
info19 Messages postés 16 Date d'inscription lundi 27 septembre 2010 Statut Membre Dernière intervention 28 décembre 2012
5 avril 2012 à 19:17
aidez moi s.v.p
0
info19 Messages postés 16 Date d'inscription lundi 27 septembre 2010 Statut Membre Dernière intervention 28 décembre 2012
6 avril 2012 à 20:18
slt;
merci infiniment pour votre attention, comme j'ai mentionné, je suis débutante avec cette notion de thread, si t'as des exemple simple ou un lien utile, merci de me proposé;
je travaille sous netbeans

je vais encore chercher en plus, et tester ce que tu as dit
encore une fois, merci
0

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

Posez votre question
info19 Messages postés 16 Date d'inscription lundi 27 septembre 2010 Statut Membre Dernière intervention 28 décembre 2012
21 avril 2012 à 22:44
merci infiniment cormandyr

merci pour votre aide
0
Rejoignez-nous