Hallo,
ich möchte mit folgendem Code erreichen, dass bei einem Mausklick ein Rechteck an der Stelle des Mausklicks gezeichnet wird. Dabei möchte ich paint verwenden und GUI-und Anwendungscode trennen.
Mein Problem: Mit getX() und getY() kann ich ja die Koordinaten des Mausklicks abfragen. Nur wie übergebe ich die Koordinaten nach paint???
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class CRechteck4 extends JFrame
{
Container mcp = getContentPane();
public static void main(String[] arg)
{
MainFrameCommand reaktion = new MainFrameCommand ();
MainFrameGUI gui= new MainFrameGUI(reaktion);
}
}
class MainFrameGUI extends JFrame
{
public MainFrameGUI(MouseListener cmd)
{
addMouseListener(cmd);
setBackground(Color.white);
setSize(800,800);
setVisible(true);
}
public void paint (Graphics g)
{
g.setColor(Color.black);
g.drawRect(30,40,500,700);
}
}
class MainFrameCommand implements MouseListener
{
public void mouseClicked(MouseEvent e)
{
int x=e.getX();
int y=e.getY();
}
public void mouseEntered(MouseEvent e){};
public void mouseExited(MouseEvent e){};
public void mousePressed(MouseEvent e){};
public void mouseReleased(MouseEvent e){};
}