Hallo,
wenn man auf das Fenster klickt, soll an der Stelle ein Quadrat gezeichnet werden, bisher habe ich das mit getGraphics() gelöst. Jetzt habe ich gelesen das man getGraphics vermeiden soll und versucht es abzuändern.
Ich hatte dann so etwas probiert:
Dann werden aber keine Quadrate gesetzt. Könnte mir wer einen Tipp geben woran das liegt?
Schonmal danke im Vorraus.
wenn man auf das Fenster klickt, soll an der Stelle ein Quadrat gezeichnet werden, bisher habe ich das mit getGraphics() gelöst. Jetzt habe ich gelesen das man getGraphics vermeiden soll und versucht es abzuändern.
Java:
public class Animation extends JPanel {
JPanel Animation = new JPanel();
Animation() {
setPreferredSize(new Dimension(300,300));
setBackground(Color.YELLOW);
addMouseListener( new MausEreignisse());
}
class MausEreignisse extends MouseAdapter {
@Override
public void mousePressed(MouseEvent e) {
Quadrat q = new Quadrat( e.getX(), e.getY()); //Koordinaten bekommen
}
}
class Quadrat { // Quadrat was gezeichnet werden soll
int intX, intY;
Graphics g=getGraphics();
public Quadrat(int intX, int intY) {
g.fillRect(intX, intY, 20, 20);
}
}
public static void main(String[] args) {
JFrame f = new JFrame();
f.setSize(300,300);
f.add(new Animation());
f.setVisible(true);
}
}
Ich hatte dann so etwas probiert:
Java:
class Quadrat extends JPanel {
int intX, intY;
public Quadrat(int intX, int intY) {
this.intX=intX; this.intY=intY;
}
@Override public void paintComponent(Graphics g) {
super.paintComponent(g);
g.setColor(Color.RED);
g.fillRect(intX, intY, 20,20);
}
}
Schonmal danke im Vorraus.