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

Agents de placement/Fenêtres Java Discussion :

Thread, Jframe et process


Sujet :

Agents de placement/Fenêtres Java

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    darkloy
    Invité(e)
    Par défaut Thread, Jframe et process
    Bonjour,

    J'ai pas vraiment un problème, mais le Look And Feel Substance me plante ma barre de progression :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    org.pushingpixels.substance.api.UiThreadingViolationException: Component creation must be done on Event Dispatch Thread
    D'après certains sites, c'est un problème connu du à une mauvaise utilisation des thread.

    J'explique mon code en essayant d'être clair:

    J'ai au clic sur un bouton :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    // Fenêtre avec barre de progression
            ProgressFrame progress = new ProgressFrame();
            Thread threadProgress = new Thread(new ProgressFrameRunnable(progress));
     
            // Traitement
            Process process = new Process(this, progress, imgLbl,  nomPhotoTxtFd.getText(), largeurTxfld.getText());
            Thread threadProcess = new Thread(new ProcessRunnable(process));
     
            // Démarrage des Threads
            threadProgress.start();
            threadProcess.start();
    J'ai une ProgressFrame qui hérite de JFrame.
    Cette progressFrame qui est appelée avec la classe ProcessRunnable qui implemente Runnable dans un thread threadProgress

    Même méthode pour process, qui est issue de la classe Process qui contient ma boucle de traitement.

    Dans cette boucle, à chaque passe, j'appelle la méthode setProgressBar de l'objet ProgressFrame que j'ai mis en paramètre du constructeur Process().

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    this.progress.setProgressBar(cpt, this.FinalValue);
    cpt est le compteur de chaque passe, et FinalValue le nombre de passe à effectuer.

    Je pense que c'est une très mauvaise méthode et j'aimerais si possible avoir des pistes sur une meilleure façon de procéder...
    Dernière modification par darkloy ; 24/11/2010 à 14h51.

Discussions similaires

  1. [C#] Combinaison de threads et de process
    Par Johann7751 dans le forum C#
    Réponses: 2
    Dernier message: 14/06/2009, 19h55
  2. Pile des threads d'un process
    Par matdur dans le forum C#
    Réponses: 4
    Dernier message: 06/10/2007, 16h38
  3. Problème de Thread/JFrame :/
    Par Sylver--- dans le forum Agents de placement/Fenêtres
    Réponses: 5
    Dernier message: 11/07/2007, 14h10
  4. thread java et process linux
    Par blured dans le forum Concurrence et multi-thread
    Réponses: 1
    Dernier message: 27/06/2007, 14h58
  5. lister les threads d'un process
    Par kaff dans le forum Windows
    Réponses: 3
    Dernier message: 22/04/2006, 11h56

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