JLista.java
Categorías: CategoryJava | CategoryProgramacion |
1 /**
2 * Jlista.java
3 *
4 * @author Luis Alejandro Bernal Romero
5 * @author Luis Harrington Díaz Rodriguez
6 *
7 * Este programa es un ejemplo de ComboBox con imagenes.
8 * Para correr este programa tiene que poner los archivos
9 * gráficos en la misma carpeta. Basado en un ejemplo del libro
10 * "Como Programar en Java" de Daitel y Daitel.
11 */
12
13 import java.awt.BorderLayout;
14 import java.awt.Container;
15 import java.awt.event.ItemEvent;
16 import java.awt.event.ItemListener;
17
18 import javax.swing.Icon;
19 import javax.swing.ImageIcon;
20 import javax.swing.JComboBox;
21 import javax.swing.JFrame;
22 import javax.swing.JLabel;
23
24
25 public class JLista extends JFrame{
26 private JComboBox cuadroComboImagenes;
27 private JLabel etiqueta;
28
29 private String nombre[] = { "Iskariote_3.gif", "Sirtux2.gif", "Prist_tux_200x130.jpg", "Tux_Knight_200x247.jpg"};
30 private Icon icono[];
31
32 private class Cambiador implements ItemListener{
33 public void itemStateChanged(ItemEvent evento) {
34 if(evento.getStateChange() == ItemEvent.SELECTED){
35 etiqueta.setIcon(icono[cuadroComboImagenes.getSelectedIndex()]);
36 }
37 }
38 }
39
40 public JLista() {
41 super("Prueba de JComboBox");
42 icono = new Icon[nombre.length];
43 for(int i = 0; i < nombre.length; i++){
44 icono[i] = new ImageIcon(nombre[i]);
45 }
46 Container contenedor = getContentPane();
47 contenedor.setLayout( new BorderLayout());
48 cuadroComboImagenes = new JComboBox(nombre);
49 cuadroComboImagenes.setMaximumRowCount(nombre.length);
50 cuadroComboImagenes.addItemListener(new Cambiador());
51
52 contenedor.add( cuadroComboImagenes , "North");
53 etiqueta = new JLabel(icono[0]);
54 contenedor.add(etiqueta, "Center");
55 setSize( 350, 300);
56 setVisible(true);
57 }
58
59 public static void main(String[] arggs) {
60 JLista app = new JLista();
61 app.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE);
62 }
63
64 }
