Sono in questa condizione, ho creato una classe EliminatoreOntologie a cui passo il riferimento di una Jlist e del ModelList ad essa associato; all'interno della classe creo un'ascoltatore per vedere dov'è il mouse quendo clikko 2 volte e cancellare il termine che seleziono.
Il Problema: se instanzio più volte la classe EliminatoreOntologie in esso si sovrappongono più volte gli ascoltatori (che la garbage collector non fa in tempo ad eliminare) e quindi mi viene eseguito più volte la procedura di cancellazione ... come di fa a far chiudere l'oggetto e forzarlo a finalizzarsi?
So che ci sono comandi per eliminare l'ascoltatore come removeMouseListener(..)codice:public class EliminatoreOntologie { DefaultListModel listModel; JList jListOntologie; /** Creates a new instance of EliminatoreOntologie */ public EliminatoreOntologie(JList JlistaOnt, DefaultListModel lm) { jListOntologie=JlistaOnt; listModel=lm; //JFormPrincipale=JFormPri; } public void EliminaSingOntologia() { jListOntologie.setEnabled(true); MouseListener mouseListenerList = new MouseAdapter() { public void mouseClicked(MouseEvent e) { if (e.getClickCount() == 2) { //Controllo se la lista è vuota if (listModel.getSize()>0) { int index = jListOntologie.locationToIndex(e.getPoint()); listModel.removeElementAt(index); jListOntologie.setEnabled(false); } } } }; jListOntologie.addMouseListener(mouseListenerList); } }
ma non riesco ad inserirlo all'interno del codice ....

Rispondi quotando