Ho provato a fare delle modifiche, senza ottenere nulla, nel senso che non va proprio.
Ho aggiunto questa classe:
Questo è l'ascoltatore del pulsante:codice:public class Wait { private boolean userHavePlayed; public Wait() { userHavePlayed = false; } public synchronized void setUserHavePlayed() { userHavePlayed = true; notifyAll(); } public boolean getUserHavePlayed() { return userHavePlayed; } public void setFalseUserHavePlayed() { userHavePlayed = false; } }
E questo è la parte del run() importante:codice:import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class DadoListener implements ActionListener { private Wait wait; public DadoListener(Wait w) { wait = w; } @Override public void actionPerformed(ActionEvent e) { wait.setUserHavePlayed(); } }
Semplicemente alla pressione del bottone non accade nulla, come il run non si sbloccasse dalla wait()..codice:while (wait.getUserHavePlayed() == false) { try { wait(); } catch (InterruptedException e) { e.printStackTrace(); } } wait.setFalseUserHavePlayed();

Rispondi quotando