我有一个方法可以记录还剩多少猜测,我希望每次有人错过字母或单词时都重新绘制它,但它一直在重新绘制自己,这导致整个程序不断闪烁。
我的方法是这样的:
public void repaintWord(Graphics g){
g.SetColor(Color.RED);
g.drawString("You have " + getN() + " guesses left", 400, 50);
repaint();
}
如何让它在 getN() 改变它的值时只重绘一次?
最佳答案
保存 repaintWord()
上次退出时 getN()
的值,并与 getN()
比较
入口:
private int lastN = ??; /* Value for max guesses. */
public void repaintWord(Graphics g)
{
if (lastN != getN())
{
lastN = getN();
g.SetColor(Color.RED);
g.drawString("You have " + lastN + " guesses left", 400, 50);
repaint();
}
}
关于Java 我只想在变量更改时重绘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11995898/