当前位置: 代码迷 >> J2SE >> Swing: removeAll()不起作用!求大牛抢救~
  详细解决方案

Swing: removeAll()不起作用!求大牛抢救~

热度:8585   发布时间:2013-02-25 00:00:00.0
Swing: removeAll()不起作用!求大牛急救~~
本帖最后由 frr0717 于 2012-12-05 20:45:22 编辑 right.removeAll();//每次在right面板上增加组件之前,先将原来右边面板上的所有组件清空!!!
right.setVisible(true);
//right.revalidate();
//right.repaint();
right.add(new PreferenceManagementWindow(userNumber, userId, client));

代码片段如上。我的最初想法是左边的panel上有几个按钮,每次点击之后,在右边的panel上显示相应内容。所以就要清除掉right面板上原来的组件,然后再加上新的组件。
但是我用了但是removeAll方法,不起作用;加上了revalidate(会报错)或者repaint(不报错,但是效果还是没有)都不能清除原来right面板上的组件。而是叠加在上面,如图:
上图是点击左列第一个按钮时right应该出现的;
然后我想点击第二个按钮,出现新的东西,但是点击了之后没有反应,而是需要在right上面单击一下,才出现在老的组件上面,如下图:


怎样才能达到我的目的?
请各位大牛指点迷津,谢谢!不用了,是因为没有setVisible的原因。打扰各位了!!求大牛解答!!感谢!!