2013-07-16 46 views
1

在父复合控制I具有复合带FillLayout隐藏与FillLayout的

comp.setLayout(new FillLayout(SWT.VERTICAL)); 

我创建这一个内部2层的复合材料。

现在我想隐藏第一个,并释放占用的地方。

child1.setVisible(false); 

我知道有办法排除复合如果使用GridDataGridLayout,但我使用的是FillLayout

可以做些什么?

+0

“处置”窗口小部件是一个选项吗? – Baz

+0

不,它不是:) – yuris

+0

恐怕我不知道任何解决方案,不使用'GridLayout'和'GridData'或一些漂亮的'moveAbove()'和'layout()'动作... – Baz

回答

0

黑客将Control.setParent()并将其添加到不可见的外壳。请注意,在所有平台上可能不支持Control.setParent()。恕我直言,这样的黑客,以避免使用GridLayout是不值得的,你应该只需更换FillLayoutGridLayout