السلام عليكم
لو سمحتو ممكن مساعدة في هاد الكود
المفروض انو البرنامج بعدالضغط على الماوس يقوم برسم دائرة على البنل ولكن المشكلة البرنامج يقوم بحذف السابقة كيف احتفظ بالجميع
import java.util.ArrayList;
import java.awt.*;
import java.awt.geom.*;
import javax.swing.*;
import javax.swing.border.TitledBorder;
import java.awt.event.*;
import java.awt.geom.*;
import java.util.ArrayList;
public class TestPanelDrawing2 extends JPanel implements MouseListener,MouseMotionListener {
static int x;static int y;
static ArrayList<Ellipse2D.Double> vert = new ArrayList<Ellipse2D.Double>();
public void mouseDragged(MouseEvent e) {
}
public void mouseMoved (MouseEvent e) {}
public void mouseClicked(MouseEvent e){
x=e.getX();
y=e.getY();
repaint();
// add(new drowcycle());
}
public void mouseEntered(MouseEvent e) {}
public void mousePressed(MouseEvent e){}
public void mouseReleased(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
public TestPanelDrawing2() {
addMouseListener(this);
addMouseMotionListener(this);
}
public static void main(String[] args) {
TestPanelDrawing2 p = new TestPanelDrawing2();
JFrame frame=new JFrame();
frame.add(p);
frame.setTitle("TestPanelDrawing");
frame.setLocationRelativeTo(null); // Center the frame
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(600, 400);
frame.setVisible(true);
}
public void paintComponent(Graphics g){
super.paintComponent(g);
g.drawOval(x,y,20,20);
// g.drawString(length,x,y);
}
}