这几天做了个华容道游戏,中途碰到了一个bug,就是游戏进入下一关后窗口最小化,然后还原游戏窗口,游戏面板的最后一个JButton变成全屏了,如下图所示:
翻阅了很多帖子,大致问题就是JPanel默认面板布局的问题,在这里我在游戏面板的paint()方法中加入
setLayout(null),问题解决。
public void paint(Graphics g){
setLayout(null);
g.clearRect(0, 0, getWidth(), getHeight());
for(int i=0;i<10;i++){
persons[i].requestFocus();
persons[i].paintComponents(g);
}
}