Foro de elhacker.net

Programación => Java => Mensaje iniciado por: Xedrox en 17 Julio 2011, 22:29 pm



Título: JList como hago para..
Publicado por: Xedrox en 17 Julio 2011, 22:29 pm
Tengo un JList que se carga con un vector de "Strings", pero supongamos que durante el proceso ese vector cambia, como hago para mantener actualizado al JList.


Muchas Gracias
salutes


Título: Re: JList como hago para..
Publicado por: sapito169 en 18 Julio 2011, 00:52 am
Eso tiene una solución la que todo programador promedio aria la mas común pero con el defecto de que no es java.util.list ni tampoco es type safe pero a su ves la mas fácil y la que no requiere librerías externas

Pues simplemente usa la clase defaultListModel

Código:
    1 DefaultListModel model = new DefaultListModel();
    2 list = new JList(model);
    3 for (int i = 0; i < 15; i++)
      model.addElement("Element " + i);
1 se crea un defaultlistmodel a partir de ahora llamado modelo esta es una lista que avisa a los cambios al jlist (la vista)
2 se crea un jlist que use la lista que creamos
3 ahora puedes modificar el modelo a tu antojo y mejicamente (la realidad es que deberías preguntarte como lo hace pero generalmente a nadie le importa conocer bien y a profundidad como funcionan las cosas) se actualizara en el formulario

-en primer lugar cuando un objeto avisa al resto de su estado para que se actualicen ese objeto es observable puedes conseguir ese mismo efecto de muchas formas la mas general es usando el patron observador

-te aviso que es una de las tantas cosas por la que swing apesta(esta es una de las menos graves) es por que no tiene una implementación de java.util.list que sea observable es decir que haga lo que tu dices

No dudes en preguntar criticar agradecer maletear o comenzar un flame si es necesario pero responde


Título: Re: JList como hago para..
Publicado por: Xedrox en 18 Julio 2011, 02:01 am
Y pero cuando algo cambia del array de elementos n ome cambia el Jlist :/ . Osea es lo mismo que hice yo pero con otra clase =P


Título: Re: JList como hago para..
Publicado por: sapito169 en 19 Julio 2011, 23:14 pm
No te entiendo te funciona o no el código
Sabes manejar clases sabes escribir código dentro del constructor?