Java utilizzo di Jlist
Ciao a tutti,
sto tentando di fare un piccolo programmino in Java che partendo da un array crei un l'oggetto Jlist.
Sto facendo qualche esperimento e sono riuscito a fare questo:
il programmino funziona però ora vorrei che la lista dei nomi fosse in ordine alfabetico.
Ho provato il metodo "Collections.sort" di "java.util.Collections" ma credo non possa essere applicato a DefaultListModel; ho anche provato ad utilizzare "ArrayList" che sono riuscito ad ordinare ma non può essere assegnata a Jlist.
Avete qualche consiglio Grazie Ciao.
sto tentando di fare un piccolo programmino in Java che partendo da un array crei un l'oggetto Jlist.
Sto facendo qualche esperimento e sono riuscito a fare questo:
- Codice: Seleziona tutto
import javax.swing.JLabel;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JList;
import javax.swing.DefaultListModel;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import java.util.Collections;
import java.awt.*;
public class MyClass {
private JFrame f;
private Container c;
private Label l;
private DefaultListModel<String> listModel;
private JList<String> lista;
private String array[] = new String[11];
public MyClass (){
f = new JFrame("Principale");
c = f.getContentPane();
l = new Label("....");
array[0] = "Paolo";
array[2] = "Franceso";
array[5] = "Giovanni";
array[7] = "Luca";
array[8] = "Mario";
array[9] = "Franceso";
listModel = new DefaultListModel<String>();
for (int i = 0; i <= 10; i++) {
if(array[i] != null){
listModel.addElement(array[i]);
}
}
lista = new JList<String>();
lista.setModel(listModel);
lista.addListSelectionListener(new ListSelectionListener() {
@Override
public void valueChanged(ListSelectionEvent e) {
if (!e.getValueIsAdjusting()) {
String selezione = lista.getSelectedValue();
l.setText(selezione);
}
}
});
c.setLayout(new BorderLayout());
c.add(l,BorderLayout.NORTH);
c.add(new JScrollPane(lista),BorderLayout.CENTER);
f.setSize(400,150);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
}
public static void main(String args[]) {
MyClass p = new MyClass();
}
}
il programmino funziona però ora vorrei che la lista dei nomi fosse in ordine alfabetico.
Ho provato il metodo "Collections.sort" di "java.util.Collections" ma credo non possa essere applicato a DefaultListModel; ho anche provato ad utilizzare "ArrayList" che sono riuscito ad ordinare ma non può essere assegnata a Jlist.
Avete qualche consiglio Grazie Ciao.
