我已經寫了這個代碼,顯示一個鼠標點擊形狀,但我有問題。當我點擊新位置時,形狀在前一個位置消失。我怎樣才能阻止發生?如何在單擊新位置時阻止形狀消失?
頭等艙:
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class MouseClick {
private static int x,y;
private static DrawingObjects object = new DrawingObjects();
public static void main(String[] args){
JFrame frame = new JFrame("MouseClick");
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(400, 400);
frame.add(object);
object.addMouseListener(new AL());
}
static class AL extends MouseAdapter{
public void mouseClicked (MouseEvent e){
x = e.getX();
y = e.getY();
object.drawing(x, y);
}
}
}
二等:
import javax.swing.*;
import java.awt.*;
public class DrawingObjects extends JPanel{
private static int x,y;
public void drawing(int xx, int yy){
x = xx;
y = yy;
repaint();
}
public void paintComponent(Graphics g){
super.paintComponent(g);
g.fillRect(x, y, 20, 20);
}
}
您在'DrawingObjects存儲只有最後點擊位置'班。所以之前繪製的矩形會消失。 – Blip
@Blip所以我應該使用數組列表? – ItssMohammed
是的,你必須使用一個列表來存儲以前點擊的點 – Blip