Que tal compañeros, hoy
vamos a continuar con otro componente que es JList y JScollPan además del uso
de una clase interna anónima para el manejo de eventos. La clase interna
anónima no es más una instancia de una clase interna anónima, y se declara sin tener
un nombre y por lo general aparece dentro de la declaración de un método.
Ahora para entender y sobre
todo aprender de los componentes JList y JScrollPane, para ello realizamos un
ejercicio donde se muestra una lista de colores y al seleccionar un color el
background de nuestra ventana cambiara con respecto al color seleccionado.
import java.awt.Color; import java.awt.FlowLayout; import javax.swing.JFrame; import javax.swing.JList; import javax.swing.JScrollPane; import javax.swing.ListSelectionModel; import javax.swing.event.ListSelectionEvent; import javax.swing.event.ListSelectionListener; public class vtnColores extends JFrame{ private JList listaColores; //Declaramos un arreglo con los nombres de los colores esto para mostrarlo en el JList private final String ArrayColores[]={"Negro", "Azul", "Cyan", "Gris obscuro", "Gris", "Verde", "Gris claro", "Magenta", "Naranja", "Rosa", "Rojo", "Blanco", "Amarillo"}; //Declaramos un arreglo de colores del objeto Color y dentro colocamos los colores del array anterior private final Color colores[]={Color.BLACK, Color.BLUE, Color.CYAN, Color.DARK_GRAY, Color.GRAY, Color.GREEN, Color.LIGHT_GRAY, Color.MAGENTA, Color.ORANGE, Color.PINK, Color.RED, Color.WHITE, Color.YELLOW}; //Constructor public vtnColores(){ super("DEMO VENTANA COLORES"); setLayout(new FlowLayout()); listaColores = new JList(ArrayColores); listaColores.setVisibleRowCount(5);//Muestra solo cinco filas del JList //No permitimos la seleccion multiple listaColores.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); add(new JScrollPane(listaColores)); listaColores.addListSelectionListener( new ListSelectionListener(){//Creamos una clase anonima //Aqui desarrollamos los eventos que se realizaran de la lista @Override public void valueChanged(ListSelectionEvent evento) { getContentPane().setBackground(colores[listaColores.getSelectedIndex()]); }//FIN del metodo valueChanged }//FIN de la clase interna anonima );//FIN de la llamada addListSelectionListener }//FIN de Constructor }
Codigo ColoresMain:
import javax.swing.JFrame; public class ColoresMain { public static void main(String[] args) { vtnColores demo = new vtnColores(); demo.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); demo.setSize(350, 350); demo.setVisible(true); } }
Resultado:
Muy bien compañeros hemos llegado al fin de este post donde aprendimos a realizar listas con un Scroll ademas de editar el fondo de nuestra ventana, si te gusto el post compartelo con tus amigos y sobretodo seguirnos en nuestras redes sociales.
No hay comentarios.:
Publicar un comentario