我正在尝试使用鼠标侦听器创建一个钢笔工具:
public void mouseDragged(MouseEvent e) {
imageL.setCoordinates(originalPos, e.getPoint());
imageL.repaint();
originalPos = e.getPoint();
}
JLabel (imageL) 中的绘制函数接收两组点,这些点允许根据鼠标拖动绘制一条线。唯一的问题是每次执行拖动时,新图层不包含从前一次鼠标拖动中绘制的线。JLabel的绘制函数如下:
public void paint(Graphics g) {
super.paint(g);
Graphics2D g2d = (Graphics2D)g;
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
g2d.setColor(drawingColour);
g2d.drawLine(originCors.x,originCors.y,endCors.x,endCors.y);
}
所以基本上我的问题是:如何将新行“添加”到当前层?
任何帮助都会很棒,在此先感谢