[JAVA] dove inserisco l'ascoltatore?

  • Creatore Discussione Creatore Discussione ali7.p
  • Data di inizio Data di inizio

ali7.p

Utente Attivo
6 Lug 2006
52
0
6
ho un problemino...

Devo realizzare una GUI utilizzando le Swing in cui viene visualizzata un'auto in corrispondenza delle coordinate che individuano la posizione del mouse ognivolta che effettuo un click.
Io ho creato la GUI, ho creato il metodo che disegna l'auto, ho creato anche l'asoltatore... ma dove lo inserisco?!

ho provato a metterlo in tutti i punti, non riesco a farlo funzionare!!!!


Codice:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.lang.*;
import java.awt.geom.*;

class Auto extends JPanel{
    public static int x,y;

    public void paintComponent(Graphics g) {
            super.paintComponent(g);
            Graphics2D g2=(Graphics2D)g;
            g2.drawLine((x-10),(y-10),(x+10),(y-10) );
            g2.drawLine((x-10),(y-10),(x-20),y);
            g2.drawLine((x-20),y,(x-20),(y+10));
            g2.drawLine((x-20),(y+10),(x+30),(y+10));
            g2.drawLine((x+30),(y+10),(x+30),(y+5));
            g2.drawLine((x+30),(y+5),(x+10),(y-10));
            Area r1=new Area(new Ellipse2D.Double((x-10),(y+5),7,7));
            Area r2=new Area(new Ellipse2D.Double((x+15),(y+5),7,7));
            g2.fill(r1);
            g2.fill(r2);
     }
}

 
class AscPD extends  MouseAdapter {
    public void mouseClicked(MouseEvent e) {
            Auto.x=e.getX();
            Auto.y=e.getY();
    }
}

 
class VeicoliGUI extends JFrame {

    private Auto auto;  

    public VeicoliGUI(){
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            String s=getClass().getName();
            setTitle(s);
            setSize(600,400);
            setLayout(new BorderLayout());
            Container c=getContentPane();
            auto=new Auto();
            c.add(auto);
            setVisible(true);
    }
 
    public static void main (String[] args) {
            VeicoliGUI p=new VeicoliGUI();
    }

}
 

Discussioni simili