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 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
|
package catalogue;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image;
import java.io.File;
import java.io.IOException;
import javax.swing.BorderFactory;
import javax.swing.JPanel;
/**
*
* @author Olivier
*/
public class ImagePanel extends JPanel
{
private String imagePath;
private static String defaultImagePath = "image/Image_manquant.png";
private Image image = null;
public boolean setImage(String newPath)
{
File myFile = new File(newPath);
if (myFile.exists())
{
image = getToolkit().getImage(newPath);
return true;
}
return false;
}
public ImagePanel() throws IOException
{
super();
this.setBorder(BorderFactory.createLineBorder(Color.black));
setVisible(true);
File myFile = new File(defaultImagePath);
if (myFile.exists())
{
imagePath = defaultImagePath;
}
else
throw new IOException("Image File doesn't exist");
setMaximumSize(new java.awt.Dimension(400, 400));
setPreferredSize(new java.awt.Dimension(400, 400));
}
@Override
public void paint(Graphics g)
{
super.paintComponent(g);
image = getToolkit().getImage(imagePath);
if(image != null) // Si l'image existe, ...
{
g.drawImage(image,0,0, this.getWidth(),this.getHeight(), this); // ... on la dessine
setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
}
}
} |