Recentemente ho lavorato a un gioco 2D in java e attualmente sto cercando di far funzionare correttamente il sistema di gestione degli eventi. Stavo cercando di ottenere un clic del mouse per avviare un'animazione, e ha funzionato fino a quando ho provato a spostare il mouse mentre si fa clic. A questo punto non succede nulla. Sto usando entrambe le classi mouselistener e mousemotionlistener, e il problema persiste ancora. Ecco il codice da Main:Gli eventi del mouse Java ignorati quando il mouse si muove?
public class ML extends MouseAdapter{
public void mouseClicked(MouseEvent m){
if(m.getButton()==MouseEvent.BUTTON1)
guns.playOnce();
}
public void mouseReleased(MouseEvent m){
if(m.getButton()==MouseEvent.BUTTON1);
}
Si chiama la classe animatore di giocare la serie di immagini una volta e stop. L'animatore funzionava perfettamente prima di includere gli eventi del mouse. Non riesco a capire perché non funzionerebbe durante il movimento del mouse se non c'è un'azione specifica da eseguire durante il movimento del mouse. (Se c'è una soluzione ovvia, mi scuso, ho avviato java non troppo tempo fa.)
Grazie! Il consiglio di fare clic mi salverà un po 'di frustrazione più tardi. – Ryan
@trashgod: Beh, in realtà "ButtonModel" tiene traccia solo dello stato - è il "ButtonUI" che ascolta gli eventi del mouse e aggiorna il modello. –