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

AWT/Swing Java Discussion :

Pb d'apparition jProgressBar


Sujet :

AWT/Swing Java

  1. #1
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 7
    Par défaut Pb d'apparition jProgressBar
    bonjour à tous,
    j'ai implémenté des taitements qui nessecitent qqe minutes d'execution. Le dectenchement se fait à partir d'un menu. Pour voir la progression de l'execution j'ai ajouter un jProgressBar mais il n'apparai que lorsque le traitement est terminé. pendant l'execution l'interface reste bloquée. le code ressemble à ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    public void jMenuItem6_actionPerformed(ActionEvent e) {
        jProgressBar1.setVisible(true);
        jProgressBar1.setValue(0);
        //traitement ....
        jProgressBar1.setValue(33);
        //traitement ....
        jProgressBar1.setValue(66);
        //traitement ....
        jProgressBar1.setValue(100);
        JOptionPane.showConfirmDialog(this,"Operation éfféctuée avec succes !",
        "Programme",JOptionPane.CLOSED_OPTION);
    }
    le jProgressBar s'affiche avec le JOptionPane. Pouvez vous m'aider...

  2. #2
    Membre éprouvé
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 83
    Par défaut
    pendant l'execution l'interface reste bloquée
    C'est pas facil de t'aider avec si peu de code. Si l'interface reste bloquée tu pourrais essayer d'utiliser un thread si possible.

    Sinon, ca me semble correcte. Je suppose que t'a fais new JProgressBar(0,100) également.

  3. #3
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,



    Ton problème vient de l'utilisation de l'EDT, le thread qui gère l'interface graphique (affichage, évènement, etc.). Pour plus d'info : Threads et performance avec Swing.

    Les méthodes de gestions des évènements, comme actionPerformed(), sont exécuté par l'EDT. Donc ton code également. Or comme tu l'as dit ton code nécessite quelques minutes d'exécution, et pendant ce temps là l'EDT ne peut pas se charger de mettre à jour l'affichage...

    Il faut donc que tu exécutes ton code dans un thread à part, et que tu utilises SwingUtilities.invokeLater() pour mettre à jour ta JProgressBar...

    Tu peux utiliser la classe SwingWorker qui te facilitera le travail...

    Plus d'info : http://rom.developpez.com/java-swingworker/
    Démo en ligne : SwingWorker à l'affiche !

    a++

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 22/03/2012, 13h13
  2. apparition d'un chanp text au click d'un bouton radio
    Par Flobel dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 09/11/2004, 09h34
  3. [JProgressBar] style de la progressBar
    Par la.musaraigne dans le forum Composants
    Réponses: 5
    Dernier message: 28/10/2004, 16h26
  4. [Conception visuelle] Apparition d'un composant rouge.
    Par Pro_Fete dans le forum JBuilder
    Réponses: 2
    Dernier message: 16/10/2004, 14h42
  5. [JProgressBar] Changer la couleur de progression
    Par loul91 dans le forum Composants
    Réponses: 2
    Dernier message: 19/07/2004, 16h10

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