HELP.....Comment créer JComboBox d'images

kenza_sana Messages postés 149 Date d'inscription mardi 14 octobre 2003 Statut Membre Dernière intervention 19 janvier 2009 - 1 mars 2006 à 01:39
kenza_sana Messages postés 149 Date d'inscription mardi 14 octobre 2003 Statut Membre Dernière intervention 19 janvier 2009 - 1 mars 2006 à 17:28
Bonjour je voudrait afficher dans une page un JComboBox avec des images...
J'ai créer le code suivant mais il s'exécute mais n'afficher pas les images;.....

JFrame frm = new JFrame( "MORPION" );
Container contenu=frm.getContentPane();
JLabel l1,l2,l3,l4,l5;
Image im1,im2,im3;
im1 = Toolkit.getDefaultToolkit().getImage("images/icone.jpg");
im2 = Toolkit.getDefaultToolkit().getImage("images/icone.jpg");
im3 = Toolkit.getDefaultToolkit().getImage("images/icone.jpg");
Image[] im={im1,im2,im3};
JComboBox compo=new JComboBox(im);
contenu.add(compo);
frm.show();

Il m'affiche des texte au lieu des images: sun.java.awt.wImage.
Des trucs de ce genre...
J'ai cherché sur le site mais je n'ai rien trovué de plus que c'est statique donc c'est plus simple normalement....
Merci et a bientot....

2 réponses

kaloway Messages postés 358 Date d'inscription jeudi 24 octobre 2002 Statut Membre Dernière intervention 13 avril 2020
1 mars 2006 à 08:18
voila un exemple de ListCellRenderer avec des icônes


import java.awt.*;


import javax.swing.*;


class MyCellRenderer extends JLabel implements ListCellRenderer {


ImageIcon bleu = new ImageIcon("./ressource/bleu.jpg");


ImageIcon vert = new ImageIcon("./ressource/vert.jpg");


ImageIcon rouge = new ImageIcon("./ressource/rouge.jpg");


ImageIcon jaune = new ImageIcon("./ressource/jaune.jpg");


// This is the only method defined by ListCellRenderer.


// We just reconfigure the JLabel each time we're called.


public Component getListCellRendererComponent(


JList list,


Object value, // value to display


int index, // cell index


boolean isSelected, // is the cell selected


boolean cellHasFocus) // the list and the cell have the focus


{


String s = value.toString();


setText(s);


if (s.equals("bleu")) setIcon(bleu);


if (s.equals("vert")) setIcon(vert);


if (s.equals("rouge")) setIcon(rouge);


if (s.equals("jaune")) setIcon(jaune);


setOpaque(true);


return this;


}


}

après tu ajoutes


dataList = new JComboBox(data);


dataList.setRenderer(new MyCellRenderer());
0
kenza_sana Messages postés 149 Date d'inscription mardi 14 octobre 2003 Statut Membre Dernière intervention 19 janvier 2009
1 mars 2006 à 17:28
Merci mais je n'ai pas bien compri...
Je crée un JLabel dans lequel je met tout les images...
Aprés je met ce JLabel dans le JComboBox mais il m'affiche des erreurs car le JComboBox ne prend pas de JLabel comme paramétre mais un tab,une liste....
Pouvez vous m'expliquer comment mettre ceci.....
0
Rejoignez-nous