Bonjour,
Je souhaiterais mettre des images dans une JComboBox. Mais je ne parviens pas à créer de rendu qui fonctionne pour ce faire.
Pourriez vous m'aiguiller ?
Bonjour,
Je souhaiterais mettre des images dans une JComboBox. Mais je ne parviens pas à créer de rendu qui fonctionne pour ce faire.
Pourriez vous m'aiguiller ?
Salut,
Il faut utiliser un renderer. C'est en fait un JLabel. Une bonne solution est de sous-classer un DefaultListCellRenderer.
Voici un exemple, dans lequel je suppose que tes items sont tous de type Image :
Ensuite tu affecte une instance de ce renderer à ta combo avec la méthode setRenderer(ListCellRenderer).
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 import java.awt.Component; import java.awt.Image; import javax.swing.DefaultListCellRenderer; import javax.swing.ImageIcon; import javax.swing.JList; public class MonRendererImage extends DefaultListCellRenderer { @Override public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus); setIcon(new ImageIcon((Image) value)); setText(""); return this; } }
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