我面临以下异常: java.lang.IllegalArgumentException - Component is already contained in Container: Container...
当我尝试显示包含先前初始化(并显示(BrowserComponent
的Form
时
我想重新利用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();
}
谢谢
我最终解决了自己的问题。
问题是在将浏览器添加到布局之前,我没有删除浏览器的父容器。修复包括在创建Container
之前添加以下行:
browser.remove();