Toolkit和paintComponent不能一起工作

时间:2013-02-10 01:27:07

标签: java multithreading swing

要初始化我的图像,我有:

imageWater = Toolkit.getDefaultToolkit().getImage("water5.gif");

在我的paintComponent()方法中,我有这样的东西:

g.drawImage(imageWater, 50, 50, 50, 50, this); 

但是,如果我将imageWater的引用更改为与water5.gif不同的文件,例如water6.gif,则paintComponent()方法中的其他任何内容都不起作用,即使是那些与imageWater完全无关的文件也是如此。我已经尝试更改变量和引用,直到我在那个确切的位置替换那个确切的文件之前没有任何作用。我不明白为什么会这样。

我的理论是,我一直在使用的thread.sleep与paintComponent(或任何gui)表现不佳,而且我之前因为某种原因而变得幸运。我对测试这个很犹豫,因为我在整个文档中有很多thread.sleep(),并且不知道如何替换它们。

1 个答案:

答案 0 :(得分:2)

“我的理论是我一直在使用的thread.sleep与paintComponent表现不佳(或者任何gui”都是正确的。

事实证明,你没有向我们提供一个可行的例子,因此很难理解你在做什么或者你想要实现的目标。

Yu可能会喜欢看看

有关该主题和可能的解决方案的更多信息