if(e.getActionCommand().equals("newgame"))
{
System.out.println(s+"");
m=new Mypanel("newGame");
Thread t=new Thread(m);
t.start();
//先删除旧的面板,否则画不出下面的
if(s==0)
{
this.remove(ms);
}else if(s==1)
{
this.remove(m);
}
this.add(m);
s=1;
this.addKeyListener(m);
//显示,刷新
this.setVisible(true);
}
为什么可以把ms remove掉,而m确不能,当重复执行这段代码时面板m的影子仍在。
------解决方案--------------------------------------------------------
if(s==0)
{
this.remove(ms);
}else if(s==1)
{
this.remove(m);
}
this.add(m);
这不是在最后又把m add进去了吗。前面刚删掉,这后面又加进去了。
------解决方案--------------------------------------------------------
------解决方案--------------------------------------------------------