立即在for循环中更改图像图标

时间:2018-09-11 15:25:50

标签: for-loop imageicon

我正在用Java创建扫雷器。现在我的问题是,当游戏结束时,我想显示用户单击时炸弹在哪里。因此,我决定编写一个函数,单击其中一个炸弹时将调用该函数。此功能将遍历表格(10x10网格布局),并检查图块是否为炸弹。如果是这样,它的图像图标将被更改为另一个,我将调用“ Thread.sleep(200)”。这样,炸弹将从顶部到底部出现。我的问题是,在Java中更改ImageIcons不是即时的。如果我像上面提到的那样编写代码,则将调用“ Thread.sleep(200),并且我必须等待,但是图标仅显示在末尾(我想当用户再次获得输入时)。我如何在for循环中显示图像图标?

这是我的代码(gombok是我要更改其图标的JButton数组):

public void gameover() {
        for(int i = 0; i < 10; i ++){
            for(int j = 0; j < 10; j ++){
                if(tiles[i][j].isIsbomb()) {
                    gombok[i][j].setIcon(bomb);
                    try {
                        Thread.sleep(200);
                    } catch (Exception e) {
                        System.out.println(e.getMessage());
                    }
                }
            }
        }
        dispose();
        System.out.println("Game Over");
    }

0 个答案:

没有答案