0

嗨,我目前正在开发一个 Java 应用程序,我必须使用 Canvas、Graphics 等进行一些绘制。

因此,如果我单击一个点并将其拖过,它之间应该有一条线(想想在油漆中画一条线)。

我目前正在使用fillRect,问题是,有没有办法从右到左填充矩形?还是我必须为此明确创建解决方法?

4

2 回答 2

2

fillRect()方法需要四个参数,x, y, width, height。你应该做的只是计算这些参数的值。如果你想从右到左绘制填充矩形,你只需要随着鼠标移动而减少x和增加。width而已。

于 2013-04-11T09:23:31.857 回答
1

添加到 ntalbs 的优秀答案(+1)。

基本上,当用户单击一个点时,您需要将其存储为锚点。当他们拖动鼠标时,您需要确定鼠标拖动的方向。

如果 click.x > drag.x,则 drag.x 成为矩形的 x 参数,否则为 click.x。

宽度和高度很简单确定为单击和拖动点之间的差异(考虑哪个更大;))

于 2013-04-11T09:40:43.390 回答