Comment inserer une image dans un jpanel ?
Est-ce le control le mieux approprié pour afficher une image?
merci
Comment inserer une image dans un jpanel ?
Est-ce le control le mieux approprié pour afficher une image?
merci
Deux choix possible (soit utiliser un JLabel avec la méthode setIcon.
Ou sinon créer une classé héritant de JPanel et redéfinisant la méthode paintComponent pour qu'elle dessine l'image.
++
Hey, this is mine. That's mine. All this is mine. I'm claiming all this as mine. Except that bit. I don't want that bit. But all the rest of this is mine. Hey, this has been a really good day. I've eaten five times, I've slept six times, and I've made a lot of things mine. Tomorrow, I'm gonna see if I can't have sex with something.
Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.
suivez mon blog sur Développez.
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook
La méthode setIcon() du jLabel prend en parametre un objet de type "Image". Seulement c'est une classe abstraite. Comment puis-je construire une image simplement avec son chemin d'accès?
merci
Je pense que cela pourrai t'aider, une classe JImage hérité de JPanel..
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 import java.awt.Image; import java.awt.Graphics; import java.awt.Dimension; import java.awt.MediaTracker; import javax.swing.JPanel; public class JImage extends JPanel { private String nomFichier; private Image image; private Dimension dimImage; public JImage (String nomFichier) { this.nomFichier=nomFichier; // bien-entendu nomFichier est un chemin absolu sans oublier les "\" de protection sous waindo image=getToolkit().getImage(nomFichier); // on pointe l'image dimImage=new Dimension(image.getWidth(this),image.getHeight(this)); setPreferredSize(dimImage); // j'initialise la taille du composanr à la taille de l'image } public void paintComponent(Graphics g) { super.paintComponent(g); g.drawImage(image,0,0,this); } public Dimension getSize() { return dimImage; } }
paintCompoment() c'est pour afficher l'image?
Qu'est ce que je dosi mettre en parametre?
merci
Pour utilisé cette classe, tu as juste à instancié un objet en passant en paramètre l'adresse de ton image.
Comme je ne suis pas fort en explication, je t'ai fais un petit programme de test, tu devrais comprendre le fonctionnement.
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 public test() { super("test"); //défini le titre setSize(200,200); //la taille JPanel pan=new JImage("H:\\google.gif"); //Panel FlowLayout b2=new FlowLayout(FlowLayout.CENTER); //layoutManager pan.setLayout(b2); //attache le layoutManager au panel setContentPane(pan); //defini le panel de la JFrame setVisible(true); //affiche la JFrame setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //opération par défaut ala fermeture } public static void main(String args[]) { new test(); }
Mon code n'est pas très bien structuré, veuillez m'en excuser mais j'ai pas trop le temps.
j'espere que sa pourra t'aidé! sinon n'hésite pas!
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager