我正在做一个小游戏,我想设置失败的条件.如果失败是真的,我希望清除屏幕上的所有图形,这样我就可以让屏幕上的一些输出文字.
我认为有一种传统的方法可以做到这一点(我宁愿知道也不必放入不必要的代码).提前致谢!
到目前为止,这是我的代码:
public void paintComponent(Graphics g){
if (!defeat){
super.paintComponent(g);
square.display(g);
wall.display(g);
for (Circle circle: circleArray){
circle.display(g);
}
}else if(defeat){
g.drawString("You have been defeated", 300, 300);
}
Run Code Online (Sandbox Code Playgroud)
你应该总是打电话super.paintComponent(g);(除非你真的知道你在做什么).
把这个电话放在你的if语句之外.那个电话就是"清除屏幕".像这样:
public void paintComponent(Graphics g){
super.paintComponent(g);
if (!defeat){
square.display(g);
wall.display(g);
for (Circle circle: circleArray){
circle.display(g);
}
}else if(defeat){
g.drawString("You have been defeated", 300, 300);
}
Run Code Online (Sandbox Code Playgroud)