begin process at 2012 02 10 19:21:47
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > SPLASH SCREEN AVEC JPROGRESSBAR

SPLASH SCREEN AVEC JPROGRESSBAR


 Information sur la source

Note :
7,5 / 10 - par 2 personnes
7,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Divers Classé sous :splashscreen, splash, jprogressbar, progression, chargement Niveau :Débutant Date de création :02/06/2007 Vu :9 655

Auteur : tlaloctzin

Ecrire un message privé
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note


 Description

Cliquez pour voir la capture en taille normale
Comme je n ai trouvé aucun SplashScreen avec une JProgressBar pour indiquer l'état de l avancement j'ai décidé de poster le mien .
Il peut largement etre amélioré avec , par exemple un mediatracker sur le panel pour couvrir le panel de l'image .
On verra ca plus tard :p

Pour l'utiliser il faut détérminer la vitesse dans la methode run();
Puis caster

Splash splash =
               new Splash(String pathImage , String messageToDisplay , String pathIconeFrame);

Et voila :)

Source

  • /*
  • *
  • *@Author Adrien PARENTY
  • *
  • */
  • import java.awt.event.*;
  • import java.awt.*;
  • import javax.swing.*;
  • public class Splash
  • {
  • JProgressBar progress;
  • Thread thread;
  • public static JFrame frame;
  • public static void main(String[] args){
  • new Splash("Logo.gif","E.A.S.\u03A8 Version 1.0 Chargement...","icone.gif");//Path de l'image qu'on veut ,message,ainsi que l icone de la fenetre
  • }
  • public Splash(String imgPath, String message,String icone)
  • {
  • frame =
  • new JFrame("Chargement");
  • frame.setIconImage(
  • Toolkit.getDefaultToolkit().getImage(icone));//icone de la Jframe
  • JPanel panel =
  • new JPanel();
  • panel.setBackground(
  • new Color(124,125,235));//Couleur de fond du Panel
  • panel.setSize(450,250);
  • panel.setBounds(0,0,450,250);
  • JLabel texte =
  • new JLabel(message);//Texte de la String
  • texte.setForeground(Color.ORANGE);
  • JLabel img =
  • new JLabel();
  • img.setIcon(
  • new ImageIcon(imgPath));
  • progress =
  • new JProgressBar(0, 100);
  • panel.setBorder(
  • BorderFactory.createLineBorder(Color.BLACK));
  • progress.setStringPainted(true);
  • //ajout des éléments
  • panel.add("North",img);
  • panel.add("North",texte);
  • panel.add("East",progress);
  • frame.getContentPane().add(BorderLayout.CENTER, panel);
  • frame.setSize(450,250);
  • //Pour définir le Splash au milieu de l'écran'
  • Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
  • frame.setLocation((screen.width - frame.getSize().width)/2,(screen.height - frame.getSize().height)/2);
  • // pour que ca ai vraiement l air d un splash :p
  • frame.setUndecorated(true);
  • frame.setVisible(true);
  • frame.setResizable(false);
  • //Retaillage de la barre pour qu elle corresponde a la taille de la frame
  • progress.setBounds(new Rectangle(10,220,430,20));
  • // Création de thread pour afficher la progression de la barre
  • thread =
  • new Thread(
  • new Progression());
  • thread.start();
  • //On peut ajouter un Thread d'une classe de traitement qui implemente un Runnable
  • //et les switcher.
  • }
  • public class Progression implements Runnable
  • {
  • public void run()
  • {
  • for (int j = 1; j < 100; j++)
  • {
  • progress.setValue(j);
  • progress.setString(j+" %");
  • try
  • {
  • thread.sleep(40);//determination de la rapiditée de la frame
  • }
  • catch(Exception e)
  • {
  • e.printStackTrace();
  • frame.dispose();//en cas d' erreur pour pas rester bloqué sur le splash
  • }
  • }
  • frame.dispose(); //fermeture de la frame lorsque le chargement est teminé
  • }
  • }
  • }
/*
 *
 *@Author Adrien PARENTY
 *
 */

import java.awt.event.*; 
import java.awt.*; 
import javax.swing.*; 
  
public  class Splash
	{
    
	JProgressBar progress;
	Thread thread;
	
	public static JFrame frame;
		
 public static void main(String[] args){
            
          new  Splash("Logo.gif","E.A.S.\u03A8 Version 1.0 Chargement...","icone.gif");//Path de l'image qu'on veut ,message,ainsi que l icone de la fenetre
            
        }
		public Splash(String imgPath, String message,String icone)
			{
				
				
			frame = 
                              new JFrame("Chargement");
                        frame.setIconImage(
                              Toolkit.getDefaultToolkit().getImage(icone));//icone de la Jframe
                        JPanel panel = 
                             new JPanel();
                        panel.setBackground(
                                  new Color(124,125,235));//Couleur de fond du Panel
                        panel.setSize(450,250);
                        panel.setBounds(0,0,450,250);
			JLabel texte = 
                                new JLabel(message);//Texte de la String 
                        texte.setForeground(Color.ORANGE);
                        JLabel img = 
                               new JLabel();
                        img.setIcon(
                                 new ImageIcon(imgPath));
			progress =
                             new JProgressBar(0, 100); 
                                
                        panel.setBorder(
                            BorderFactory.createLineBorder(Color.BLACK));
                        progress.setStringPainted(true);
                                
                       //ajout des éléments
                       panel.add("North",img);
                       panel.add("North",texte);
                       panel.add("East",progress); 
                       frame.getContentPane().add(BorderLayout.CENTER, panel);
		       frame.setSize(450,250);
                   //Pour définir le Splash au milieu de l'écran'
                        Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
                        frame.setLocation((screen.width - frame.getSize().width)/2,(screen.height - frame.getSize().height)/2);
                     // pour que ca ai vraiement l air d un splash :p
                	frame.setUndecorated(true);
                        frame.setVisible(true);
			frame.setResizable(false);
                        //Retaillage de la barre pour qu elle corresponde a la taille de la frame
			progress.setBounds(new Rectangle(10,220,430,20));
			// Création de thread pour afficher la progression de la barre
                                     thread =
                                            new Thread(
                                              new Progression());
                                                thread.start();
                                //On peut ajouter un Thread d'une classe de traitement qui implemente un Runnable
                                //et les switcher.                
                                                
                                               
			}
		public class Progression  implements Runnable
			{
			public void run()
				{
					for (int j = 1; j < 100; j++) 
						{
							progress.setValue(j);
                                                        progress.setString(j+" %");
							try
							{
							thread.sleep(40);//determination de la rapiditée de la frame
							}
						catch(Exception e)
							{
                                                                e.printStackTrace();
                                                                frame.dispose();//en cas d' erreur pour pas rester bloqué sur le splash
							}
						}

						frame.dispose(); //fermeture de la frame lorsque le chargement est teminé
                                                
				}
			}
	} 
  



 Sources du même auteur

Source avec une capture GRAPHIQUE EN BÂTON
Source avec une capture TEXTE ROTATIF JAVA 3D
Source avec Zip FRAME AVEC FONDS SUR NETBEANS EN CONSERVANT LE GUI EDITOR

 Sources de la même categorie

Source avec Zip Source avec une capture COMPLÉTION AUTOMATIQUE par Julien39
Source avec Zip Source avec une capture [JOGL] ANIMATION 3D DANS UN BOUTON par loloof64
Source avec Zip CALCULATRICE BIEN FAITE (VERSION SIMPLIFIÉE) par Julien39
Source avec une capture YNOT, UN NOUVEAU LANGAGE DE SCRIPT ÉCRIT EN JAVA. par apmneo7114
Source avec Zip KIT DE FICHIERS DE PROGRAMMATION par edouard333

 Sources en rapport avec celle ci

Source avec une capture JPROGRESSBAR SIMPLE D'UTILISATION. par bygui
Source avec Zip Source avec une capture EXEMPLE D'UTILISATION DE JPROGRESSBAR - BARRE DE PROGRESSION par GillesWebmaster
Source avec Zip Source avec une capture PROGRESSBAR SYNCHRONISEE par dmaillet
CHARGEMENT ET AFFICHAGE IMAGE SOUS APPLET par Juls
EVÈNEMENT D'INTERACTION DE BARRE DE PROGRESSION par Mikonyx

Commentaires et avis

Commentaire de GillesWebmaster le 02/06/2007 19:13:56

Code propre et très utile!
Bravo!

Commentaire de darthpolor_I le 02/06/2007 20:42:53

Salut,

Il me semble bien que c'est pas une "vraie" barre de chargement
puisque c'est ton splash lui meme qui met a jour la progress bar
(Thread.sleep(40))
Ca n'indique donc pas un temps de chargement pour une etape de la construction de l'application

DarthPolor / PeGyDeuzHem

Commentaire de tlaloctzin le 02/06/2007 21:32:56

Salut ,
ca s est pour l exemple , libre a toi de créer un autre thread pr un chargment ( c' est ce que j ai fais dans mon appli ) ,

puis tu switch les thread et assigne la valeure de la barre quand ton opération se termine .

je posterais l'exemple quand j'aurais terminé le projet sur lequel je bosse .

Commentaire de GillesWebmaster le 03/06/2007 07:18:48

On se réjouis
P.S: note: 10/10!!!

Commentaire de GodConan le 24/06/2007 23:43:18

Source quelque peu obsolete depuis le JDK 1.6 qui integre deja une class SplashScreen il suffi juste d y coler une progresse bar..

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Barre de progression [ par EducJava ] Salut,J'ai entendu dire qu'il était très simple de faire afficher une barre de progression. Est-ce que l'on doit avoir un thread pour faire cela? Qu'e JProgressBar [ par didoux95 ] Bonjour a tous, j'ai un petit probleme avec la JProgressBar. je n'arrive pas a la faire "avancer".Voila le code que j'utilise:JProgressBar Progression JProgressBar [ par Herv59 ] Bonjour,Je souhaite créer une barre de progression d'attente.C'est à dire que tant que l'action n'est pas terminé, la barre continue de progresser.Ma Rendre le remplissage d'une JProgressBar crénelé [ par Voltrek ] Le remplissage des JProgressBar apparait crénelé (c'est à dire comme une succession de petits rectangles, si vous voyez ce que je veux dire). J'aimera Parametrer localisation fenetre lors chargement [ par jonathan100 ] Bonjour a tous, Voila il y a un code que je n'arrive pas a trouver. Je souhaiterais parametrer la localisation de la fenetre (notamment je voudrais la afficher une JProgressBar dans une JTable [ par stephane160 ] Je suis étudiant en informatique et je réalise en ce moment un logiciel de partage de fichiers peer 2 peer en java. Je voudrais savoir comment affiche JAVA: Jcombobox & chargement ? 2 questions [ par ronando ] bjr a tous,2 questions dc.Je voudrai savoir comment fair pr que lorsque l'on selectionne un element ds une Jcombobox qu'il se passe un evenement (ex : Pb vec JProgressBar et ProgressMonitor [ par stdess ] J'essaie de faire fonctionner le progress monitor ou la JProgressBar.A partir d'une frame, cela fonctionne correctement.Par contre, à partir d'une int Chargement dans dll. [ par sikstar ] Bonjour, j'programme en java swing.J'voudrais créer un prog de gestion pour mon interface k8000 de chez velleman, j'ai réussi à faire ce prog en vb, m probleme de JProgressBar [ par franckouze ] Salut a touscomme le titre l'indique, j'ai un probleme avec une JProgressBar qui ne progresse pas. Y a t il un champion ici qui pourrait regarder cett


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,463 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales