我试图使用带有螺纹的.fillrect方法的两个调用来慢慢绘制矩形。每种方法之间的leep呼叫。发生的事情是,在初始化矩形之前,睡眠方法被调用,因此似乎已经绘制了矩形。我只想画一部分矩形,暂停五秒钟,然后绘制鹿肉的部分。

这是我的代码 -

public void paint(Graphics g, int w, int h) {
    g.drawRect(0, 0, w - 1, h - 1);
    g.fillRect(0, 0, 10, h-1);

   try {
    Thread.sleep(5000);
} catch (InterruptedException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

    g.fillRect(0, 0, 50, h-1);
 }

谢谢

有帮助吗?

解决方案

无论该平台如何,使事件线程阻止始终是一个非常糟糕的主意。

您应该做的是在存储您想要绘制的区域的当前范围的地方定义变量。在单独的线程上更新这些变量(您可以阻止所有想要的线程),并调用RepAlt()方法,以在更新变量时安排重新粉刷。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top