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
|
import javax.swing.JPanel;
import javax.swing.border.LineBorder;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Color;
import java.awt.Dimension;
import java.lang.Math;
public class JPanelImage extends JPanel{
String url;
//>>>>>>>CONSTRUCTEUR
public JPanelImage (String addresse){
url = addresse;
}
//>>>>>>>INIT COMPONENT
public void paintComponent(Graphics g){
Image monImage = getToolkit().getImage(url);
monImage = Redimension(monImage);
g.drawImage(monImage, 0, 0, this);
super.setBorder(new LineBorder(Color.black, 3));
super.setSize(new Dimension(100,100));
super.setMaximumSize(new Dimension(100,100));
super.setMinimumSize(new Dimension(100,100));
super.setPreferredSize(new Dimension(100,100));
}
//>>>>>>>>>>>>>>>METHODE QUI PERMET DE REDIMENSIONNER L'IMAGE POUR LA FAIRE RENTRER DANS UN PANEL 100,100
public Image Redimension(Image source){
if(Math.max(source.getWidth(this), source.getHeight(this)) == source.getHeight(this)){source = source.getScaledInstance(-1, 100, Image.SCALE_SMOOTH);
}
else{
source = source.getScaledInstance(100, -1, Image.SCALE_SMOOTH);
}
return source;
}
} |
Partager