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 :

[splash screen]afficher une image à l'écran


Sujet :

2D Java

  1. #1
    Invité
    Invité(e)
    Par défaut [splash screen]afficher une image à l'écran
    Bonjour,

    je souhaite réaliser un splashscreen, je n'ai jamais manipuler les images de cette façon, je veux donc commencer par un truc simple : Afficher une image à l'écran.
    Voici mon code, qui n'affiche rien :

    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
    34
    35
    36
    37
    38
     
    public class ImagesTest {
     
        public static void main(String[] args) {
            showImage("images/smiley_rol_fun.png");
        }
     
        private static void showImage(String imageName) {
            /** On s'assure que l'image est complètement chargée */
            Image image = new ImageIcon(imageName).getImage();
            /** On crée la nouvelle image */
            final BufferedImage bufferedImage = new BufferedImage(image.getWidth(null), image.getHeight(null),
                    BufferedImage.TYPE_INT_RGB);
            // Graphics g = bufferedImage.createGraphics();
            // g.drawImage(image, 0, 0, null);
            // g.dispose();
     
            JWindow window = new JWindow() {
     
                @Override
                public void paint(Graphics g) {
                    if (bufferedImage != null) {
                        g.drawImage(bufferedImage, 0, 0, null);
                    }
                }
     
            };
     
            // affiche l'image pendant 5 secondes.
            window.setVisible(true);
            Timer timer = new Timer(5000, new ActionListener() {
                public void actionPerformed(ActionEvent evt) {
                    System.exit(0);
                }
            });
            timer.start();
        }
    }
    l'image est bien trouvée pluisque je récupère sa taille : image.getWidth(null)sans problème.

    merci.

  2. #2
    Gfx
    Gfx est déconnecté
    Expert éminent
    Avatar de Gfx
    Inscrit en
    Mai 2005
    Messages
    1 770
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Points : 8 178
    Points
    8 178
    Par défaut
    Remplace :

    g.drawImage(bufferedImage, 0, 0, null);

    par :

    g.drawImage(image, 0, 0, null);

    Et retire la ligne final BufferedImage...
    Romain Guy
    Android - Mon livre - Mon blog

  3. #3
    Invité
    Invité(e)
    Par défaut
    en fait je m'apperçois que la péthode paint() n'est jamais appelé, pourquoi ? c'est pas la bonne méthode ?

    en fais je suis pas sûtr que mon image est bien chargé parce que si je change le nom et que je met n'importe quoi je n'ai pas d'erreur, image n'est pas null

    Quelles sont les bonnes méthodes pour charger une image ?

Discussions similaires

  1. Réponses: 14
    Dernier message: 20/01/2015, 16h17
  2. Réponses: 2
    Dernier message: 11/06/2010, 15h51
  3. Afficher une image en plein écran
    Par crazy_inf dans le forum Qt
    Réponses: 3
    Dernier message: 06/07/2008, 09h24
  4. Afficher une image sur un écran 3D.
    Par pan99 dans le forum 3D
    Réponses: 1
    Dernier message: 16/04/2007, 13h48
  5. [Afficher une image] Comment afficher une impression écran ?
    Par mnina dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 2
    Dernier message: 10/11/2005, 10h30

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