Oscilación de Java | JList con ejemplos

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: 
 

  1. JList() : crea una lista en blanco vacía
  2. JList(E [ ] l) : crea una nueva lista con los elementos del arreglo.
  3. JList(ListModel d) : crea una nueva lista con el modelo de lista especificado
  4. 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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *