PREMESSA :![]()
ho un applicazione java (GMS.java) con un metodo public static void main che crea una Jwindow .. vorrei sapere come faccio a gestire gli eventi del mause o tastiera : infatti se aggiungo una classe "MouseClick" esternamente alla classe principale che estende MouseAdapter devo togliere il PUBLIC e comunque essendo esterna alla classe GMS non può accedere agli oggetti in essa definiti ( nella fattispecie la Jwindow ).
Se la sposto internamente definendo una classe interna la cosa risulta fattibile... poi però non so + come andare avanti ecco il codice che ho scritto :
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
public class GMS
{
public static void main(String args[])
{
Jwindow window1= new Jwindow()
window1.setSize(100,100);
window1.setLocation(100,100);
window1.show();
MouseClickListener mouse = new MouseClickListener();
addMouseListener(mouse);
}
private class MouseClickListener extends MouseAdapter
{
public void mouseClicked(MouseEvent evt)
{
window1.hide();
}
}
}
La roba in rosso se la aggiungo mi scrive che non posso aggiungerla ad uno static context...
La roba in blù poi che ho trovato nell'Horstmann.. non me la legge proprio "unable to resolve simbol addMouseListener()";
Se aveste qualche soluzione .. .che c'è di sicuro è sarà semplicissima ve ne sarei grato.. ( forse il mio problema sta nel non capire cosa voglia dire esattamente static... cmq)
se postate il codice di quello che cercate di spiegarmi è anche meglio.. un esempio vale 1000 parole ! ciao ciao