IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Interfaces Graphiques en Java Discussion :

Avancement de la tâche de JProgressBar utilisant le MVC?


Sujet :

Interfaces Graphiques en Java

  1. #1
    Membre régulier Avatar de Zalawy
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 137
    Points : 99
    Points
    99
    Par défaut Avancement de la tâche de JProgressBar utilisant le MVC?
    Bonjour

    J'ai lu les tutos qui correspondent à ma recherche et les forum possibles... je suis bloquée et je suis perdue car je cherche à comprendre le code que je dois utiliser.
    J'ai mis quelques jours à chercher comment ça fonctionne et j'ai échoué. Hé oui,ça a fait mal de chercher partout tous les jours

    Voici code d'une classe Progress (exemple) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    public class Progress extends JFrame{
     
    	private static final long serialVersionUID = 1L;
    	Thread thread;
    	private JProgressBar progressBar;
     
    		/*String [] legends = {"Upload fileName1", "Upload fileName2",
    				"Upload fileName3", "Upload fileName4",
    				"Upload fileName5", "Upload fileName6",
    				"Upload fileName7", "Upload fileName8",
    				"Upload fileName9", "Upload fileName10",
    				"Upload fileName11", "Upload fileName12",
    				"Upload fileName13", "Upload fileName14",
    				"Upload fileName15", "Upload fileName16"};*/
    	public Progress (){
    		setSize(600, 300);
    		setTitle("Menu de progression");
    		this.setVisible(true);
    		this.setLayout(null);
     
    		progressBar = new JProgressBar(0,100);
    		progressBar.setBounds(100,100,375,20);
    		progressBar.setValue(0);
    		progressBar.setStringPainted(true);
     
    		this.add(progressBar);
     
    		thread = new Thread(new Traitement());
    		thread.start();
     
    		}
     
    		public class Traitement implements Runnable {
    			public void run(){
    				progressBar.setMaximum(100);
    				progressBar.setMinimum(0);
     
    				for (int upload = 0; upload <= 100; upload++){
    						progressBar.setValue(upload);
    					try{
    						Thread.sleep(200);
     
    					} catch (InterruptedException e){
    						e.printStackTrace();
    					}
    				}
    			}
    		}
     
    }
    Bien,j'ai fait une interface graphique de la barre de progression et le thread,puis je lance,impeccable. Mais je veux que,la progressBar, c'est indiquer à l'utilisateur l'avancement de la tâche. Je pense au MVC mais je ne suis pas sûre.

    Quelqu'un peut-il me conseiller le code que je dois utiliser?

    PS : Je ne sais pas que ce post a déjà abordé le même sujet mais je le poste quand même.

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par Zalawy Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
     
    		public class Traitement implements Runnable {
    			public void run(){
    				progressBar.setMaximum(100); //PAN!
    				progressBar.setMinimum(0); //PAN!
     
    				for (int upload = 0; upload <= 100; upload++){
    						progressBar.setValue(upload); //PAN!
    					try{
    						Thread.sleep(200);
     
    					} catch (InterruptedException e){
    						e.printStackTrace();
    					}
    				}
    			}
    		}
     
    }
    PAN! Les modifications des composants graphique se font toujours exclusivement, dans l'Event Dispatch Thread, jamais dans tes Threads à toi.

    http://java.developpez.com/faq/gui/?...EDTAutreThread

    Ensuite, pour ton cas précis, regarde du coté de progress monitor
    http://docs.oracle.com/javase/tutori....html#monitors
    Qui fait déjà tout le travail

  3. #3
    Membre régulier Avatar de Zalawy
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 137
    Points : 99
    Points
    99
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    progressBar.setMaximum(100);
    progressBar.setMinimum(0);
    On mince! J'avais su mais je ne sais pas pourquoi que j'ai mis ça,c'est moche

    Sinon,merci pour ta réponse.
    J'ai lu ton lien celui de progress monitor et ce n'est pas ça que je voulais mais j'ai trouvé le lien que je voulais même ce lien n'est pas résolu :
    http://www.developpez.net/forums/d42...ads-graphique/

    Et ça marche! En tout cas,merci pour ton conseil

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [WS 2008] Planificateur de tâche - droit d'utilisation
    Par couledoux dans le forum Windows Serveur
    Réponses: 1
    Dernier message: 04/07/2012, 14h32
  2. Utilisation du MVC sous Qt
    Par jderam dans le forum Débuter
    Réponses: 1
    Dernier message: 27/04/2009, 15h47
  3. Barre d'avancement d'une tâche
    Par Wolfgang31 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/09/2007, 18h05
  4. Faut-il combiner Spring avec Struts ou utiliser Spring MVC ?
    Par micanti dans le forum Frameworks Web
    Réponses: 3
    Dernier message: 23/04/2007, 16h31
  5. [JProgressBar] Utilisation d'un thread
    Par GLDavid dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 16/01/2006, 11h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo