Tema: JComboBox
Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/02/2012, 13:57
lincolnf_2
 
Fecha de Ingreso: abril-2011
Ubicación: lima
Mensajes: 134
Antigüedad: 13 años, 1 mes
Puntos: 3
JComboBox

buenas tardes tengo una duda, he logrado poner iconos en mi combo box, ose un icono al lado del texto, me sale de maravilla; el pequeño inconveniente es cuando despliego el combobox para ver las opciones, se muestran normal con los iconos al costado pero al poner el puntero del mause en cualquiera de los items no se marca ninguno de ellos, como podria solucionar esto. cualquier sugerencia se los agradecere:

este es mi codigo:

Código:
import java.awt.Component;
import java.util.HashMap;

import java.util.Map;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.ListCellRenderer;

/**
 *
 * @author uSER
 */
public class RenderJCombobox extends JLabel implements ListCellRenderer {
    
    Map<Object, ImageIcon> elementos;
 ImageIcon imgnull=new ImageIcon(getClass().getResource("/pruebas/database_refresh.png"));
 
 public RenderJCombobox(){
  elementos=new HashMap<>();
  ImageIcon img1=new ImageIcon(this.getClass().getResource("/pruebas/database_refresh.png"));
  ImageIcon img2=new ImageIcon(this.getClass().getResource("/pruebas/user_add.png"));
  
elementos.put("uno", img1);
  elementos.put("dos", img2);
  
 }

 
    

    @Override
    public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
      if(elementos.get(value)!=null){
   setIcon(elementos.get(value));
   setText(""+value);
   
  }else{
   setIcon(imgnull);
   setText(""+value);
  }
  return this;
 }
    

}
esto es en el Jframe:

Código:
JComboBox combo=new JComboBox();
combo.addItem("uno");
        combo.addItem("dos");
        RenderJCombobox render = new RenderJCombobox();
combo.setRenderer(render);