JList es parte del paquete Java Swing. JList es un componente que muestra un conjunto de objetos y permite al usuario seleccionar uno o más elementos. JList hereda la clase JComponent. JList es una manera fácil de mostrar una array de vectores.
Constructor para JList son:
- JList() : crea una lista en blanco vacía
- JList(E [ ] l) : crea una nueva lista con los elementos del arreglo.
- JList(ListModel d) : crea una nueva lista con el modelo de lista especificado
- JList(Vector l) : crea una nueva lista con los elementos del vector
Los métodos comúnmente utilizados son:
método | explicación |
---|---|
getSelectedIndex() | devuelve el índice del elemento seleccionado de la lista |
obtenerValorSeleccionado() | devuelve el valor seleccionado del elemento de la lista |
setSelectedIndex(int i) | establece el índice seleccionado de la lista en i |
establecer fondo de selección (color c) | establece el color de fondo de la lista |
establecerSelecciónPrimer plano(Color c) | Cambia el color de primer plano de la lista. |
setListData(E [ ] l) | Cambia los elementos de la lista a los elementos de l . |
setVisibleRowCount(int v) | Cambia la propiedad visibleRowCount |
setSelectedValue(Objeto a, booleano s) | selecciona el objeto especificado de la lista. |
setSelectedIndices(int[] i) | cambia la selección para que sea el conjunto de índices especificado por la array dada. |
setListData(Vector l) | construye un ListModel de solo lectura a partir de un Vector especificado. |
setLayoutOrientation(int l) | define la orientación de la lista |
establecerFixedCellWidth(int w) | Cambia el ancho de celda de la lista al valor pasado como parámetro. |
setFixedCellHeight(int h) | Cambia la altura de celda de la lista al valor pasado como parámetro. |
esIndiceSeleccionado(int i) | devuelve verdadero si se selecciona el índice especificado; de lo contrario, devuelve falso. |
indexToLocation(int i) | devuelve el origen del elemento especificado en el sistema de coordenadas de la lista. |
getToolTipText(MouseEvent e) | devuelve el texto de información sobre herramientas que se utilizará para el evento dado. |
obtenerListaValoresSeleccionados() | devuelve una lista de todos los elementos seleccionados. |
obtenerIndicesSeleccionados() | devuelve una array de todos los índices seleccionados, en orden creciente |
getMinSelectionIndex() | devuelve el índice de celda seleccionado más pequeño, o -1 si la selección está vacía. |
getMaxSelectionIndex() | devuelve el índice de celda seleccionado más grande, o -1 si la selección está vacía. |
getListSelectionListeners() | devuelve los oyentes de la lista |
getLastVisibleIndex() | devuelve el índice de lista más grande que está visible actualmente. |
getDragEnabled() | devuelve si el manejo automático de arrastre está habilitado o no |
addListSelectionListener(ListSelectionListener l) | agrega un listSelectionlistener a la lista |
Los siguientes programas ilustrarán el uso de JLists
1. Programa para crear un JList simple
Java
// java Program to create a simple JList import java.awt.event.*; import java.awt.*; import javax.swing.*; class solve extends JFrame { //frame static JFrame f; //lists static JList b; //main class public static void main(String[] args) { //create a new frame f = new JFrame("frame"); //create a object solve s=new solve(); //create a panel JPanel p =new JPanel(); //create a new label JLabel l= new JLabel("select the day of the week"); //String array to store weekdays String week[]= { "Monday","Tuesday","Wednesday", "Thursday","Friday","Saturday","Sunday"}; //create list b= new JList(week); //set a selected index b.setSelectedIndex(2); //add list to panel p.add(b); f.add(p); //set the size of frame f.setSize(400,400); f.show(); } }
Producción :
2. Programa para crear una lista y agregarle itemListener (programa para seleccionar tu cumpleaños usando listas).
Java
// java Program to create a list and add itemListener to it // (program to select your birthday using lists) . import javax.swing.event.*; import java.awt.*; import javax.swing.*; class solve extends JFrame implements ListSelectionListener { //frame static JFrame f; //lists static JList b,b1,b2; //label static JLabel l1; //main class public static void main(String[] args) { //create a new frame f = new JFrame("frame"); //create a object solve s=new solve(); //create a panel JPanel p =new JPanel(); //create a new label JLabel l= new JLabel("select your birthday"); l1= new JLabel(); //String array to store weekdays String month[]= { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"}; //create a array for months and year String date[]=new String[31],year[]=new String[31]; //add month number and year to list for(int i=0;i<31;i++) { date[i]=""+(int)(i+1); year[i]=""+(int)(2018-i); } //create lists b= new JList(date); b1= new JList(month); b2= new JList(year); //set a selected index b.setSelectedIndex(2); b1.setSelectedIndex(1); b2.setSelectedIndex(2); l1.setText(b.getSelectedValue()+" "+b1.getSelectedValue() +" "+b2.getSelectedValue()); //add item listener b.addListSelectionListener(s); b1.addListSelectionListener(s); b2.addListSelectionListener(s); //add list to panel p.add(l); p.add(b); p.add(b1); p.add(b2); p.add(l1); f.add(p); //set the size of frame f.setSize(500,600); f.show(); } public void valueChanged(ListSelectionEvent e) { //set the text of the label to the selected value of lists l1.setText(b.getSelectedValue()+" "+b1.getSelectedValue() +" "+b2.getSelectedValue()); } }
Producción :
Nota: Es posible que los programas anteriores no se ejecuten en un compilador en línea; use un IDE sin conexión
Publicación traducida automáticamente
Artículo escrito por andrew1234 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA