用于在SWT中实现自定义折叠/展开行为的编码习惯用法

时间:2014-02-14 01:23:38

标签: java swt eclipse-rcp eclipse-plugin

我有一个自定义小部件(包含其他复合材料的组),看起来像the top image

我想实现当用户双击“某些文本”时,窗口小部件折叠为the bottom image之类的行为。

如果再次双击“some text”,则窗口小部件将扩展为原始版本。

我可以通过破坏/创建绿色矩形内的其他小部件(即小文本,圆角矩形和圆形)然后双击时调用绿色矩形上的pack()来实现这一点,但我是想知道是否有更优雅的编码习惯用于实现所描述的行为?注意:我不想使用带有指定切换按钮的小部件(例如,PGroup)。

1 个答案:

答案 0 :(得分:1)

如果您对可以使用的每件商品GridLayout使用GridData

(GridData)data = (GridData)control.getLayoutData();

data.exclude = true;

control.setVisible(false);

隐藏控件,当隐藏所有控件时,在父组合上使用layout()。要再次显示反转excludesetVisible来电。