web-dev-qa-db-fra.com

Afficher une image jpg sur un JPanel

Quel serait le type d'image le plus approprié pour afficher une image jpg (chargée à partir d'un dossier local) sur un JPanel?

À votre santé.

16
burntsugar
ImageIcon image = new ImageIcon("image/pic1.jpg");
JLabel label = new JLabel("", image, JLabel.CENTER);
JPanel panel = new JPanel(new BorderLayout());
panel.add( label, BorderLayout.CENTER );
28
Eugene Ryzhikov

Vous pouvez utiliser un javax.swing.ImageIcon et l'ajouter à un JLabel à l'aide de la méthode setIcon (), puis ajouter le JLabel au JPanel.

7
Sean A.O. Harney

J'utiliserais probablement un ImageIcon et le placerais sur un JLabel que j'ajouterais au JPanel.

Voici les documents de Sun sur le sujet.

2
Tom

Vous pouvez également utiliser

ImageIcon background = new ImageIcon("Background/background.png");
JLabel label = new JLabel();
label.setBounds(0, 0, x, y);
label.setIcon(background);

JPanel panel = new JPanel();
panel.setLayout(null);
panel.add(label);

si vous travaillez avec une valeur absolue comme mise en page.

1
Handsken

J'utiliserais un canevas que j'ajouterais au JPanel et dessinerais l'image sur le canevas. Mais Canvas est un objet assez lourd, car il provient d'AWT.

1
Per Alexandersson