Per una jTable utilizzo un Listener che gestisce l'evento di selezione riga.
Il metodo:
codice:
public void valueChanged(ListSelectionEvent e) {
}
viene eseguito 2 volte quando utilizzo il mouse per cambiare riga!
Analizzando il problema utilizzando il seguente codice nel metodo valueChanged:
codice:
if (e.getValueIsAdjusting()) {
System.err.println("MOUSE PREMUTO");
}
if(!e.getValueIsAdjusting()) {
// CON LA TASTIERA ENTRA SOLO IN QUESTO
System.err.println("MOUSE RILASCIATO o TASTIERA");
}
ho capito che il problema è dovuto al fatto che ogni click è visto come 2 cambiamenti, una quando il mouse viene premuta ed un'altra quando viene rilasciato, mentre con la tastiera se ne ha uno soltanto.
Dato che alla selezione segue un caricamento di un'immagine in un jPanel vorrei evitare questo comportamento!
Secondo voi come faccio ad evitare che in caso di uso del mouse venga interpretato solo il ckick e non il rilascio?
Grazie mille per ogni suggerimento