嘿,伙计们,我有个小问题。我有一个面板,我在那里画了一根线。这是一个游戏,所以我不断地重新绘制分数,以便更新它。然而,当我再次绘制它时,它是在以前的分数之上绘制的,所以它看起来都乱七八糟的。有什么办法解决这个问题吗?
Comp2d.drawString(GetScore(得分),ScoreX,ScoreY);
发布于 2010-04-12 10:05:42
在绘制字符串之前,您需要重新绘制背景。如果这是一个普通的面板,您可以通过在您自己的paintComponent中调用super.paintComponent(g)来重新绘制背景;但是,由于这是一个游戏,我将猜测您需要绘制一些其他背景。此外,如果可能的话,我建议您使用JLabel,而不是使用drawString命令。
发布于 2010-04-12 09:09:45
您可以尝试在comp2d.drawString()之后使用repaint()。
发布于 2017-05-13 15:41:43
当你调用这个命令时:comp2d.drawString(GetScore(Score),ScoreX,ScoreY);
您应该将其命名为:comp2d.dispose()
因为所有使用comp2d的操作都将在.dispose()之后应用
https://stackoverflow.com/questions/2619380
复制相似问题