1

我正在制作一个打印图像并允许用户通过在其上绘图来编辑它的 Java 应用程序。目前,我的程序监听鼠标拖动,一旦它,改变光标当前所在像素的颜色。为了显示更改,我在每个循环paintComponent结束时调用。mouseDragged虽然它按预期工作,但如果我移动鼠标太快,图像会颤动。

这是因为我打电话的次数paintComponent太多了吗?如果是这样,我怎样才能让我的程序更有效地工作?

我正在考虑仅在内存中编辑图像并每隔 1/30 秒左右显示一次图像,而不是在每次编辑后显示它。

4

1 回答 1

1

这是因为我打电话的次数paintComponent太多了吗?

一次太多了。而是调用repaint()& 让它安排(或忽略)对paintComponent().

于 2012-06-03T08:20:05.080 回答