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

NetBeans Java Discussion :

Implémentation du Progress bar


Sujet :

NetBeans Java

  1. #1
    Débutant  
    Inscrit en
    Mai 2006
    Messages
    705
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 705
    Points : 117
    Points
    117
    Par défaut Implémentation du Progress bar
    Salut à tous,

    je suis presque débutant avec le Netbeans, je cherche a introduire la composante Progress bar dans ma page d'authentification pour ajouter un peu d'ergonomie pendant que l'utilisateur attends le résultat de son authentification (aprés avoir introduire son login et mot de passe bien sûr ! )...
    Le problème c'est que je veut obtenir un exemple de l'utilisation et l'implémentation de cette composante avec le NetBeans .
    Merci à vous.

    Cordialement ..

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 51
    Points : 38
    Points
    38
    Par défaut
    Eh bien tu fixe un min et un max, et au fur à mesure de ton avancement tu modifie la valeur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    JProgressBar b = new JProgressBar();
    b.setMinimum(0);
    b.setMaximum(10);
     
    //Dans ton traitement
    b.setValue ( b.getValue() + 1) ;
    voilà ...

  3. #3
    Débutant  
    Inscrit en
    Mai 2006
    Messages
    705
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 705
    Points : 117
    Points
    117
    Par défaut
    Merci beaucoup, mais est ce que vous pouvez être plus clair côté traitement (c'est à dire au niveau de b.setValue ( b.getValue() + 1)

    Merci encore

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 51
    Points : 38
    Points
    38
    Par défaut
    Imaginons que vous avez 10 fichiers à lire et que vous souhaitiez montrer l'avancement de votre projet . A chaque fichier lu, vous incrémenter la valeur de la barre de progression.

    En partant de l'exemple précédent pour min/max
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    for (int i=0; i<10; i++)
    {
         TraitementFichier ("file_" + i );
         b.setValue(i);   // Ou  b.setValue( b.getValue() + 1);
                          //value> Valeur de la barre de progression
    }
    Par contre je n'arrive pas à saisir véritablement le sens de la question...

  5. #5
    Débutant  
    Inscrit en
    Mai 2006
    Messages
    705
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 705
    Points : 117
    Points
    117
    Par défaut
    Mon objectif est d'avoir une barre de progession qui commence a se "remplir" dés que l'utilisateur appuie sur valider aprés avoir entrer son login et son mot de passe dans la fenêtre d'authentification ... Une sorte d'animation en attendant l'affichage ou bien avant de passer à la fenpetre suivante........ vous voyez ce que je veux dire.

    ---est ce que votre code permet de visualiser le progressement de la barre?

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 51
    Points : 38
    Points
    38
    Par défaut
    Mais soit, les actions sont "découpables" et vous pouvez utiliser ce que j'ai fait, soit alors c'est un temps d'attente du à des connexions réseau et dans ce cas chercher plutot sur Internet des Gif de barre de progression (ou autres) que vous mettrez dans un JLabel, il me semble qu'il gère les gif mais à vérifier

    sinon le code que j'ai mis ne permet pas l'affichage directement. A mettre dans une fenêtre par exemple.

  7. #7
    Membre éprouvé Avatar de fraco
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2006
    Messages : 750
    Points : 934
    Points
    934
    Par défaut
    avec un timer ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    import java.awt.event.*;
    import javax.swing.*;
     
       private void activerLeTimer() {        
           int delay = 1000;            //millisecondes
           ActionListener taskPerformer = new ActionListener() {
                public void actionPerformed(ActionEvent evt) {
       	           b.setValue ( b.getValue() + 1);              
                 }
           };     
           new Timer(delay, taskPerformer).start(); 
        }
    ça devrait augmenter b de 1 chaque seconde
    et

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
       public void start() {
               activerLeTimer.start();        
        }
         public void stop() {
               activerLeTimer.stop();
        }

  8. #8
    Débutant  
    Inscrit en
    Mai 2006
    Messages
    705
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 705
    Points : 117
    Points
    117
    Par défaut
    Quand je met ce code la
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     public void start() {
               activerLeTimer.start();        
        }
         public void stop() {
               activerLeTimer.stop();
        }
    le compilateur me demande de créer une classe qui s'appelle "activerLeTimer" ?!!!!
    donc est ce que vous pouvez me signaler ou dois je mettre les deux parties de votre code dans le mien pour que je puisse vous bien comprendre.. merci

  9. #9
    Membre éprouvé Avatar de fraco
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2006
    Messages : 750
    Points : 934
    Points
    934
    Par défaut
    Ah, oui, désolé...
    il faut effectivement que ce soit une classe, externe, ou interne comme dans cet exemple.
    voici le code complet :

    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
     
    package Testpackage;
     
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import javax.swing.Timer;
     
    public class TestJFrame extends javax.swing.JFrame {      
         Timer timer;
     
        public TestJFrame() {        
            initComponents();
            TimerTest tt = new TimerTest();
            tt.setTimer();
            timerStart();
     
            class TimerTest {          // une classe à l'intérieur de TestJFrame
           	     public void setTimer() {      // 300 millisecondes
          	          timer = new Timer(300, new ActionListener() {     
                   	          public void actionPerformed(ActionEvent e) {
                                  jTextField1.setText(jTextField1.getText()+"X");
                  	          }
            	 });
                 }
            }
            public void timerStart() {
                   timer.start();
            }
            public void timerStop() {
                   timer.stop();
            }
        }
    }
    tu places timerStart() et timerStop() au bon endroit dans ton code.
    bonne chance !

Discussions similaires

  1. Réponses: 0
    Dernier message: 28/05/2010, 12h37
  2. [ATL] Petite question sur les progress bar
    Par MrMaze dans le forum MFC
    Réponses: 1
    Dernier message: 06/05/2005, 09h40
  3. [MFC]Changer la couleur d'un progress bar
    Par Deedier dans le forum MFC
    Réponses: 1
    Dernier message: 21/04/2005, 18h39
  4. [VB.NET] Mise en place d'une progress bar
    Par Hoegaarden dans le forum Windows Forms
    Réponses: 14
    Dernier message: 19/10/2004, 09h23
  5. Progress bar au boot
    Par saibe dans le forum Administration système
    Réponses: 2
    Dernier message: 18/08/2003, 10h01

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