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 :

Thread: passage de valeurs continu


Sujet :

Interfaces Graphiques en Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2004
    Messages
    528
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2004
    Messages : 528
    Par défaut Thread: passage de valeurs continu
    Bonjour,

    voila, j'ai une class tread et une class normal
    Class thread:
    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
     
    import javax.swing.JProgressBar;
     
    // La classe qui correspond au thread pour faire avancer la barre
     
    class ThreadAvanceBarre extends Thread
    {
    	JProgressBar barre;
    	int value;
    	public int getValue()
    	{
    		return value;
    	}
     
    	public void setValue(int value)
    	{
    		this.value = value;
    	}
     
    	public ThreadAvanceBarre(JProgressBar b)
    	{
    		barre = b;
    	}
     
    	public void run()
    	{
    		while (barre.getValue() < 100)
    		{
    			try
    			{
    				sleep(100);
    			}
    			catch (Exception e)
    			{
    				System.err.println(e);
    			}
    			barre.setValue(value);
    		}
    	}
    }
    class normale:
    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
     
    import javax.swing.*;
     
    public class Barre extends JFrame
    {
    	JProgressBar b;
    	public Barre()
    	{
    		this.setBounds(200, 200, 200, 50);
    		b = new JProgressBar(0, 100);
    		this.getContentPane().add(b);
    		this.setVisible(true);
    		Thread t = new ThreadAvanceBarre(b);		
    		t.start();	
     
    	}
     
    	public static void main(String args[])
    	{
    		new Barre();
    	}
    }
    JE souhaite mettre à jour ma Jprogrress au fur et a mesure d'un certain traitement que je n'ai pas indiqué et qui est fait dans la class Normale. (exemple: mettre un compteur i=0 à 100 et faire un Add.value(i) sur la jprogressBar qui est dans le thread

    D'avance merci

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 276
    Par défaut
    Ton traitement ne serait pas mieux dans ta classe de Thread ?
    Comme ça, en fonction de l'avancement, tu mets à jour ta progressBar.

  3. #3
    Membre éclairé
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2004
    Messages
    528
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2004
    Messages : 528
    Par défaut
    Au faite, mon traitement est assez long. EN plus, j'ai une dizaine de classes qui demandent ce genre de progressBAr, donc je prefererai garder mon thread dans une class bien separée.

  4. #4
    Membre émérite Avatar de Pollux
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    706
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2005
    Messages : 706
    Par défaut
    Connais-tu la classe SwingWorker?

    En faisant une petite recherche tu trouveras des infos qui te permettront de régler ce problème facilement: http://www.google.com/custom?q=swing...developpez.com

  5. #5
    Membre éclairé
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2004
    Messages
    528
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2004
    Messages : 528
    Par défaut
    C'est pour eviter SwingWorker que j'ai choisi les thread car ca m'a l'air BARBAR comme principe... je n'ai trouvé à ce jour aucun tutorial bien fait et expliquant chaque partie du code.

    Sur ce site (developpez.com), il y a bien des explications sommaires, mais pas bien détaillées a mon gout

  6. #6
    Membre émérite Avatar de Pollux
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    706
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2005
    Messages : 706
    Par défaut
    SwingWorker n'a rien de barabare. Elle a été intégrée au JDK c'est dire s'il est recommandé de l'utiliser! C'est exactement ce qu'il te faut! C'est quand meme dommage de passer à coté simplement parce que tu as des préjugés.

Discussions similaires

  1. Passage par valeur / passage par adresse
    Par jeje99 dans le forum C++
    Réponses: 13
    Dernier message: 16/02/2006, 10h29
  2. Réponses: 3
    Dernier message: 09/01/2006, 09h44
  3. Réponses: 7
    Dernier message: 18/05/2005, 15h09
  4. Passage de valeurs entre fenêtres différentes
    Par Amnesiak dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 16/02/2005, 15h10
  5. [C#] Passage de valeur d'une fenêtre à une autre
    Par groum999 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 13/09/2004, 14h12

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