Ho realizzato (sotto linux) in un jpanel un rettangolo di selezione. Il rettangolo viene trascinando il mouse tenendo premuto il tasto sinistro, ed al suo rilascio deve comparire un menu a scomparsa.
codice:
/** Evento del mouse, gestisce l'azione del click destro ed il termine del rettangolo di selezione. */
public void mouseReleased(MouseEvent e) {
maybeShowPopupMenu(e);
System.out.println("MouseReleased - " + e.getClickCount());
if (flagRectSelection && e.getClickCount()==0 && e.getButton()==MouseEvent.BUTTON1) { //e' stato trascinato il mouse
System.out.println("Entro");
reorderSelectionCoords();
flagPopup=true;
currX=e.getX()-translateX; currY=e.getY()-translateY;
leftMenu.show(this, e.getX()-5, e.getY()-5);
} else if (selectedParticle!=null) selectedParticle=null;
}
In linux nessun problema. Purtroppo in windows, la funzione getClickCount non restituisce 0 dopo aver trascinato il cursore, ma restituisce comunque 1. Come posso ovviare?