Ver Mensaje Individual
  #2 (permalink)  
Antiguo 29/03/2012, 02:30
cesars1220
 
Fecha de Ingreso: marzo-2012
Ubicación: Estado de México
Mensajes: 7
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: JComboBox Cambiar imagen en tiempo de ejecucion

Espero que un te sirva te mando un pequeño código para te sirva de orientación:

MarcoCuadroCombinado.java
Cita:
/**
* @(#)PruebaCuadroCombinado.java
*
* @author César Rdgz.
* @version 1.00 2010/9/30
*/
//Uso de un objeto JComboBox para seleccionar una imagen a mostrar
import java.awt.FlowLayout;
import java.awt.event.ItemListener;
import java.awt.event.ItemEvent;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JComboBox;
import javax.swing.Icon;
import javax.swing.ImageIcon;

public class MarcoCuadroCombinado extends JFrame{
//Cuadro combinado con los nombres de los iconos
private JComboBox imgJComboBox;
//etiqueta para mostrar el icono seleccionado
private JLabel etq;
private String nombres[]=
{"Java1.jpg","Java2.jpg","Java3.jpg","Java4.jpg "};
private Icon iconos[]={
new ImageIcon(getClass().getResource(nombres[0])),
new ImageIcon(getClass().getResource(nombres[1])),
new ImageIcon(getClass().getResource(nombres[2])),
new ImageIcon(getClass().getResource(nombres[3]))};
/*El constructor de MarcoCuadroCombinado agrega un objeto
*JcomboBox a JFrame*/
public MarcoCuadroCombinado() {
super("Prueba de JComboBox");
//establece el esquema del marco
setLayout(new FlowLayout());
imgJComboBox=new JComboBox(nombres); //establece JCmboBox
imgJComboBox.setMaximumRowCount(3); // establece 3 renglones

imgJComboBox.addItemListener(new ItemListener(){
//maneja evento JComboBox
public void itemStateChanged(ItemEvent evento){
//determina si está seleccionada la casilla de verificación
if(evento.getStateChange()==ItemEvent.SELECTED)
etq.setIcon(iconos[
imgJComboBox.getSelectedIndex()]);
}//fin del método itemStateChanged
}//fin del calse interna anónima
); //fin de la llamada a addItemLister
add(imgJComboBox); //agrega cuadro combinado a JFrame
etq=new JLabel(iconos[0]); //muestra el primer icono
add(etq); //agrega etiqueta a JFrame
} //fin del contructor de MarcoCuadroCombinado
}//fin de la clase MarcoCuadroCombinado
Ahora el código, PruebaCuadroCombinado.java

Cita:
/**
* @(#)PruebaCuadroCombinado.java
*
*
* @author César Rdgz
* @version 1.00 2010/9/30
*/
//Prueba de MarcoCuadroCombinado
import javax.swing.JFrame;

public class PruebaCuadroCombinado {
MarcoCuadroCombinado mcc;
//Creo el contructor PruebaCuadroCombinado
public PruebaCuadroCombinado() {
mcc=new MarcoCuadroCombinado();
mcc.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE) ;
mcc.setSize(350,150);
mcc.setVisible(true);
} //fin del constructor PruebCuadroCombinado
//Creo el método main
public static void main(String[] args){
new PruebaCuadroCombinado();
} //fin del método main
}//fin del la clase PruebaCuadroCombinado
recuerda este último código es el que tiene el método MAIN por lo tanto este es el que se debe ejecutar.