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