Publié le 17/08/2010
Auteur Axel
Réseaux sociaux
0 partages
0 tweets
0 plus
0 commentaires

Afficher une barre de progression dans un JFrame

Sur une opération longue comme le téléchargement de fichier ou l'accès à une base de données, il est conseillé d'afficher une fenêtre d'attente. Ainsi l'utilisateur verra la progression de l'opération et sait quand le résultat va s'afficher à l'écran.

Créer une fenetre de progression

Pour l'exemple, nous allons construire un JFrame contenant une JProgressBar qui affiche l'avancement de l'opération de 0 à 100 pourcent. La tache longue est simulée avec une boucle et un Sleep.

import java.awt.FlowLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JProgressBar;
 
/**
 * Afficher une barre de progression dans un JFrame
 * @see http://www.fobec.com/java/966/afficher-une-barre-progression-dans-jframe.html
 * @author Axel 2010
 */
public class ProgressDialog extends JFrame {
 
    public JProgressBar progressbar;
 
    /**
     * Constructeur
     */
    public ProgressDialog() {
        super();
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setLocationRelativeTo(null);
        JPanel pane = new JPanel();
        pane.setLayout(new FlowLayout());
        progressbar = new JProgressBar(0, 100);
        progressbar.setValue(0);
        progressbar.setStringPainted(true);
        pane.add(progressbar);
        setContentPane(pane);
    }
 
    /**
     * Afficher la progression de tache
     */
 
    public void loop() {
        int position = 0;
        while (position < 105) {
            progressbar.setValue(position);
            try {
                Thread.sleep(500);
            } catch (InterruptedException e) {
            }
            position += 5;
        }
    }
 
    /**
     * Exemple
     * @param arguments 
     */
    public static void main(String[] arguments) {
        ProgressDialog frame = new ProgressDialog();
        frame.pack();
        frame.setVisible(true);
        frame.loop();
    }
}

Cet exemple a pour but de montrer comment agir sur l'avancement de la JProgressBar, à savoir faire avancer la progression de 0 à 100 pourcent. Effectivement, le système de fenetre d'attente pourra être améliorer avec un Thread pour éviter les sacades.

Ajouter un commentaire

Les champs marqués d'un * sont obligatoires, les adresses emails se sont pas publiées.

A lire aussi

Réseaux sociaux
Présentation de l'article
Catégorie
java - sources
Mise a jour
17/08/2010
Visualisation
vu 3735 fois
Public
Internaute
Auteur de la publication
Axel
Membre junior
Auteur de 51 articles
|BIO_PSEUDO|
Commentaires récents

Publié par hisy dans java

Merci pour le script mais si un champ text contient un ";" ...

Publié par Fobec dans java

Bonjour Steev,
un player plus complet est dispo ici: http://www.fobec.com/java/1106/wav-player-avec-bouton-stop-barre-progression.html

Publié par Ludwig dans tuto

Bonjour,
Il me semble que les plugins de gestion d'images sont payants pour TinyMCE et CKeditor, est-ce toujours le cas ?
Il manque amha l'excellent Xinha dans cette liste, qui lui est Open Sour...

Publié par revente lmnp dans logiciel

J'aimerais avoir plus d'informations sur cette article, si quelqu'un peux m'en donnee d'avantage, je vous en remercie d'avance.

Publié par Julie dans logiciel

C'est donc un moteur de recherche specialise. On peut vraiment rechercher tous les domaines que l'on veut. Cela permettrait aux gens de ne plus se faire arnaquer. Quelle bonne idee!