2
我是第一次使用JPanel并在JPanel上绘制基本形状。Java JPanel绘图形状
我已经写代码,这样的形状:
public class Shape extends JPanel{
int x,y;
public Shape(int x, int y){
this.x = x;
this.y = y;
}
public void paint(Graphics g){
super.paint(g);
g.setColor(Color.black);
g.drawRect(x, y, 20, 20);
}
}
我有另一个类,我将使用这个形状。它扩展了JFrame并实现了MouseListener。在这个JFrame上,我把JPanel简称为“panel”。
我有方法,它读取鼠标位置,并在“面板”上绘制形状。
public void mouseClicked(MouseEvent e){
Shape shape = new Shape(e.getX(),e.getY());
panel.add(shape);
panel.revalidate();
panel.repaint();
}
问题是,它没有绘制我的鼠标所在坐标上的形状。它只是在面板上绘制并绘制在一条线上。
谢谢你的回答。