Quote Originariamente inviata da andbin Visualizza il messaggio
Non ho capito ... quale è il dubbio? Avrai oggetti di tipo Menu ... il list model conterrà oggetti Menu e puoi prenderli dal list model in qualunque momento (es. l'elemento "selezionato"). Se non usi DefaultListModel parametrizzato con i generics da Java 7, esso fornisce Object ma tu "sai" che sono oggetti Menu. Quindi basta un cast e poi es. getId().

Scusami, ho editato così tante volte il messaggio che ti ho fatto perdere tempo a rispondere a cose già risolte (cioè il problema dei dati duplicati nella jlist e dell'assenza del menuId)!
Adesso devo gestire le selezioni sulla lista, così p come era prima più o meno:

codice:
    private void menuListValueChanged(javax.swing.event.ListSelectionEvent evt) {                                      
        //model.addListDataListener(null);
        int index = menuList.getSelectedIndex();
        int size = model.getSize();
        if (index >= 0) { 
            bDeleteMenu.setEnabled(true);
        } else { 
            bDeleteMenu.setEnabled(false);
            }
        String field = (String)menuList.getSelectedValue();
        menuName.setText(field);
        //int menuId=DBConnection.getMenuId(field);
        //System.out.println(menuId);
    }
Ma ovviamente ora mi da errore a runtime di casting sulla riga String field = menuList.getSelectedValue();
Il mio listModel contiene il vettore di oggetti menu.