Bonjour,

Je cherche à mettre un logo en icône de mon application, c'est-à-dire dans la décoration de la fenêtre.
Pour ça, j'utilise la méthode setIcon de ma JFrame.
Le logo s'affiche bien, mais tous les pixels transparents sont gris ! J'ai trouvé un post qui parlait de problème avec le PNG qui serait mal géré, j'ai essayé en GIF c'est pareil !

Des idées ?

Pour info, mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
        String icon = "/logo.gif";
        URL iconURL = this.getClass().getResource(icon);
        if (iconURL != null) {
        	Image img = new ImageIcon(iconURL).getImage();
        	this.setIconImage(img);
        }
J'ai essayé une autre méthode consistant à passer par une BufferedImage :
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
 
        String icon = "/logo.png";
        URL iconURL = this.getClass().getResource(icon);
        if (iconURL != null) {
        	Image img = new ImageIcon(iconURL).getImage();
        	BufferedImage theImage = GraphicsEnvironment.getLocalGraphicsEnvironment().
            getDefaultScreenDevice().
            getDefaultConfiguration().
            createCompatibleImage(img.getWidth(null),
                                  img.getHeight(null),
                                  Transparency.BITMASK);
                                  //Transparency.TRANSLUCENT);
        	theImage.getGraphics().drawImage(img,0,0,null);
        	this.setIconImage(theImage);
        }
ça ne marche pas non plus

Merci