Bonjour à tous!
Comme dit dans le titre, setIcon ne m'affiche plus l'image que je veux charger dans le label...
Voici l'endroit où ça cloche:
public void loadImage(String path, JLabel target)
{
ImageIcon picImage = new ImageIcon(path);
if (picImage != null)
{
target.setIcon(new ImageIcon(picImage.getImage().getScaledInstance(maxWidth, maxHeight, Image.SCALE_DEFAULT)));
}
}
Lorsque je charge une image avec une String, l'image ne s'affiche pas dans le label. Par contre, si je mets "icone.png" (par exemple) - qui se trouve dans le projet (ressource) -, l'icone s'affiche...
Je ne vois pas ce qui pose problème avec le chemin absolu...
maxWidth et maxHeight sont définies en local, tout comme les JLabel.
Même en faisant le strict minimum, quelque chose de tout simple, ça ne marche pas
:
import java.awt.Dimension;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class test
{
public static void main(String args[])
{
JFrame frmM = new JFrame();
JPanel pnlM = new JPanel();
JLabel lblM = new JLabel();
ImageIcon imgM = new ImageIcon("X:\\Error.bmp" );
frmM.setVisible(true);
frmM.setSize(new Dimension(300,300));
frmM.setContentPane(pnlM);
pnlM.add(lblM);
lblM.setIcon(imgM);
}
}
Normalement, il ne suffit de mettre que ça...
Quelqu'un pourrait-il m'aider s'il-vous-plaît?
La vraie question est "Pourquoi ça marche avec les images du paquetage, et pas avec les autres, même avec le chemin absolu?"... Le chemin est pourtant correct...
Merci par avance pour votre aide!