SWT Make Composite 完全填充 parent
SWT Make Composite fully fill parent
我的 SWT
GUI 有问题:
我有一个 TabFolder
,其中包含一个 ScrolledComposite
,它本身包含一个 Composite
,后者又包含几个 Composites
。问题是这些 Composites
没有完全占据 ScrolledComposite
上 Composite
的大小。
如您所见,具有边框的内部 Composite
并未完全填充 parent。
parent 使用 GridLayout
因此我已经在尝试通过设置 GridData
来获得我想要的东西
Composite base = new Composite(parent, SWT.BORDER);
base.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
但是如您所见,这是行不通的。
有人知道怎么做吗?
(在创建时我现在不知道 parent 的最终大小,因此我不能只做 base.setSize(parent.getSize())
)
使用
GridLayout layout = new GridLayout();
layout.marginHeight = 0;
layout.marginWidth = 0;
yourComposite.setLayout(layout);
去除不需要的边距。
您可能需要将此应用于不止一位家长。
我的 SWT
GUI 有问题:
我有一个 TabFolder
,其中包含一个 ScrolledComposite
,它本身包含一个 Composite
,后者又包含几个 Composites
。问题是这些 Composites
没有完全占据 ScrolledComposite
上 Composite
的大小。
如您所见,具有边框的内部 Composite
并未完全填充 parent。
parent 使用 GridLayout
因此我已经在尝试通过设置 GridData
Composite base = new Composite(parent, SWT.BORDER);
base.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
但是如您所见,这是行不通的。
有人知道怎么做吗?
(在创建时我现在不知道 parent 的最终大小,因此我不能只做 base.setSize(parent.getSize())
)
使用
GridLayout layout = new GridLayout();
layout.marginHeight = 0;
layout.marginWidth = 0;
yourComposite.setLayout(layout);
去除不需要的边距。
您可能需要将此应用于不止一位家长。