让 org.eclipse.swt.widgets.List 占满parent
时间: 2024-10-22 14:11:33 浏览: 9
org.eclipse.swt相关jar包
3星 · 编辑精心推荐
要使`org.eclipse.swt.widgets.List`组件完全占据其父容器,你可以使用`TableWrapLayout`布局管理器来设置List的大小策略。以下是实现这一目标的方法:
首先,导入所需的包[^1]:
```java
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.List;
import org.eclipse.swt.layout.TableWrapData;
import org.eclipse.swt.layout.TableWrapLayout;
```
然后,在创建ScrolledForm时,配置TableWrapLayout:
```java
// 初始化表单工具包
FormToolkit toolkit = new FormToolkit(getSite().getWorkbenchWindow().getDisplay());
// 创建ScrolledForm
ScrolledForm form = new ScrolledForm(getShell(), SWT.V_SCROLL | SWT.H_SCROLL);
// 创建表格布局
TableWrapLayout layout = new TableWrapLayout();
form.getBody().setLayout(layout);
// 创建List并设置大小策略
List list = new List(form.getBody(), SWT.MULTI | SWT.WRAP);
list.setLayoutData(new TableWrapData(TableWrapData.FILL_GRAB));
```
在这里,`TableWrapData.FILL_GRAB`表示List会填充可用空间,并且可以适应父容器大小的变化。
阅读全文