0

我之前遇到了一个问题,我试图将对象添加到我的画布上,但 SwingUtilities.invokeLater 还没有真正完成它的工作。我真的需要能够可靠地向这个 JPanel 添加东西,但我一直遇到同样的错误。下面的代码有更好的选择吗?

private void startNewGame() {
    SwingUtilities.invokeLater(new Runnable() {
        public void run() {
            gameFrame = new InvadersGameFrame();
        }
    });
}
4

1 回答 1

3

看看SwingUtilities.invokeAndWait(Runnable)哪个:

导致在 AWT 事件调度线程上同步doRun.run()执行。此调用会阻塞,直到所有待处理的 AWT 事件都已处理并(然后)返回。当应用程序线程需要更新 GUI 时,应使用此方法。doRun.run()

于 2014-04-22T02:36:16.547 回答