0

我们如何像在绘画中一样在 Java 中绘制形状?

例如,如果我想绘制矩形,此命令将绘制它:

g2.fill3DRect(mt, mf, 45, 45, true); 

但是如何像在绘画中那样在运行时使用鼠标来增加或减小对象或形状的大小?

4

2 回答 2

1

使用鼠标侦听器获取鼠标按下后的位置。IE

g2.fill3DRect(mt, mf, mouse.getX(), mouse.getY(), true); 

但是在每次绘制之前通过在整个屏幕上绘制一个矩形来清除屏幕,这样就不会同时出现一百万个矩形。这当然是最基本的例子。研究双重缓冲和练习。

于 2012-04-07T16:55:18.620 回答
0

实现一个包含形状属性的形状对象。

您的面板应该维护一个它在需要时绘制的形状列表。也可以将一种形状附加到鼠标上。

然后在您的面板上注册一个鼠标监听器,它将:

  • 如果您移动鼠标,请更新您的形状并重新绘制面板。
  • 当你 mouseDown 时创建一个新形状
  • 当你 mouseUp 时释放形状
于 2012-04-07T16:50:35.253 回答