首页 文章

代号一个,不能两次显示相同的BrowserComponent

提问于
浏览
2

我面临以下异常: java.lang.IllegalArgumentException - Component is already contained in Container: Container... 当我尝试显示包含先前已初始化的 Form (并显示) BrowserComponent

我想重新利用 BrowserComponent ,以便在后续运行中跳过加载时间(总是有相同的内容,但有一些重js)

代码流程可以总结如下:

BrowserComponent browser;

private void show(){
    Form f = new Form("name", new BorderLayout());
    if(browser == null) // only initialise first time loaded
    {
        browser = new BrowserComponent();
        browser.setURL("jar:///Folder/File.html");
    }
    Container centerBackground = BorderLayout.center(browser); //Exc source
    f.add(CENTER, centerBackground);
    f.show();
}

谢谢

1 回答

  • 2

    我最终解决了自己的问题 .

    问题是,在将其添加到布局之前,我不是_289659_的父容器 . 该修复包括在创建 Container 之前添加以下行:

    browser.remove();
    

相关问题