我创建了一个从布局属性为GridBagLayout的JPanel扩展而来的类。我基本上需要显示一个网格( JLabels )数组,但是一旦创建组件,我就不能替换它。我尝试删除我想要更改的组件,然后放置新的组件,但结果很奇怪。例如,我创建了一个10x10Position数组,并希望用下面的代码替换JLabels和position9:
//At first i have the jpanel layout completely filled
this.remove(0);
this.add((JLabel) start, 0); //This was created with GridBagL
我有一个很大的应用程序,它有一个复杂的UI (用Flex 3.6构建)。有许多嵌套组件,其中大多数具有事件侦听器或绑定设置程序。其结构类似于:
- Client View
- Portfolio View
- Personal data
- etc. etc.
- Manager view
- etc. etc.
有时,我必须销毁客户端视图来重新初始化它;我所做的是从它的容器中删除它;但是内存似乎没有正确地被垃圾收集(问题在于事件侦听器和数据绑定的存在)。
阅读书籍和论坛后,我发现管理这种情况的最佳方法是删除对象销毁时的数