0

我已经启动了一个似乎运行良好的 Java Paint 程序......只有一个问题。在我的程序中,我对其进行了设置,以便它使用 MouseListener 方法重新绘制()的椭圆并覆盖paintComponent(Graphics g)。问题是当我快速移动鼠标时,它开始分离我的椭圆,而不是在拖动鼠标时形成一条平滑线。有没有办法来解决这个问题。

PS 请记住,我更喜欢使用 fillOval 方法而不是 drawLine,因为我仍然想设置描边。

提前致谢

4

2 回答 2

2

有关两种常见的绘画方法,请参阅自定义绘画方法。该示例在鼠标移动时绘制了一个没有问题的矩形。

于 2013-06-19T19:06:37.410 回答
1

您仍然可以设置笔触以用于在两点之间绘制一条线。您应该存储上一个鼠标位置并在最后一个位置和当前位置之间进行插值以创建 Line2D 形状。然后创建一个具有所需椭圆宽度的笔画,并将该笔画应用于图形上下文,然后绘制线条。此链接包含有关笔划和形状的更多信息。

如果您真的想继续绘制椭圆,您可以沿着起点/终点之间的线进行插值,并在一个循环中绘制多个椭圆。

于 2013-06-19T19:01:58.943 回答