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

2D Java Discussion :

Afficher un message animé d'"attente"


Sujet :

2D Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 24
    Par défaut Afficher un message animé d'"attente"
    Bonjour à tous,

    J'ai une application développé en swing qui envoit des requêtes vers un site internet. Parfois cette attente peut durer quelques secondes et je souhaite afficher une image au milieu de la fenetre qui indique un message avec une animation (un gif animé).

    Je me suis donc orienté vers un objet JWindow qui vient par dessus toutes les autres fenêtres et qui contient un objet Gif (trouvé sur le forum :p) qui dérive d'un JPanel.
    Malheureusement, lorsque j'execute le code, je n'ai qu'une bande grise qui s'affiche (de la taille de l'animation en fait), mais c'est tout

    Voici le code :
    Classe Gif
    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
    import java.awt.Color;
    import java.awt.Graphics;
    import java.awt.Image;
    import java.io.IOException;
     
    import javax.imageio.ImageIO;
    import javax.swing.JPanel;
     
    @SuppressWarnings("serial")
    public class Gif extends JPanel {
    	private Image img;
     
    	public Gif (String path) {
    		try {
    			img = ImageIO.read(getClass().getClassLoader().getResourceAsStream(path));
                            setSize(img.getWidth(null), img.getHeight(null));
    			repaint();
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
    	}
     
    	protected void paintComponent(Graphics g) {
    		// efface le contenu précédent :
    		g.setColor(Color.RED);
    		g.fillRect(0, 0, this.getWidth(), this.getHeight());
    		// dessine le gif :
    		g.drawImage(img, 1, 1, img.getWidth(null), img.getHeight(null), this);
       }
     
    	}
    Et voici le contenu de la JWindow :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    public class SplashScreen extends JWindow {
    	private Gif gif;
     
    	public SplashScreen(String pathToImage) {
    		// Affichage du splashScreen
    		gif = new Gif(pathToImage);
    		setSize(gif.getWidth()+20, gif.getHeight()+20);
     
            setLocationRelativeTo(null);
            setVisible(true);
            setAlwaysOnTop(true);
            //update(getGraphics());
    	}
    Ca fait un petit moment que je suis dessus, sans vraiment pouvoir avancer... Avez-vous une idée ??

  2. #2
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Utilises l'InfiniteProgressPanel du projet SwingFx dans le glasspane de ta JFrame
    https://swingfx.dev.java.net/

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 24
    Par défaut
    Excellente cette librairie ! Je ne la connaissais pas ! Merci beaucoup sinok !

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

Discussions similaires

  1. Afficher un message + Icône d'attente animée
    Par Mic13710 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 29/10/2012, 14h24
  2. Afficher un message + Icône d'attente animée
    Par LeForestier dans le forum Contribuez
    Réponses: 0
    Dernier message: 10/06/2009, 14h35
  3. Afficher un message d'attente en SQL Server
    Par bong03 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 10/05/2006, 09h43

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