Ciao a tutti, sto tentando di fare una faccia animata in ci gli occhi seguono il mouse ma ho un problema, tutto dentro un'applet:
questa è l'applet:
Classe AscoltatoreMovimentoMousecodice:DisegnaSuApplet disegno = new DisegnaSuApplet(schermo); //raccoglie i metodi per disegnare cerchi, rettangoli, ... CostruzioneFaccina faccina = new CostruzioneFaccina(schermo); //insieme di metodi che disegnano la base della faccia mouse = new AscoltatoreMovimentoMouse((Graphics2D) schermo); //classe in cui è possibile rilevare le posizione del mouse this.addMouseMotionListener(mouse); //implementazione
Ecco il metodo "crea" che, per il momento disegna un rettangolo colorato (per il momento, per provare se disegnava al movimento del mouse)codice:public void mouseMoved(MouseEvent oggettoEvento) { System.out.println("Posizione : " + oggettoEvento.getX() + " " + oggettoEvento.getY()); //funziona CostruzioneFaccina disegno = new CostruzioneFaccina(); disegno.crea(5, 5, schermo); //Non funziona!!!! }
In quale parte risiede il problema? La faccina viene disegnata correttamente, in consolle quando il mouse di sposta si vede (le coordinate del mouse ci sono e cambiano al cambiar posizione del puntatore) ma non viene disegnato il rettangolo. Perché?codice:protected void crea(int x, int y, Graphics2D schermoPassato) { schermo = schermoPassato; foglio = new DisegnaSuApplet(schermo); foglio.disegnaRettangoloPieno(x, y, 100, 100, Color.BLACK); }
Grazie mille a tutti!

Rispondi quotando
