Java SWT:组的高度

Java SWT:组的高度,java,swt,jface,Java,Swt,Jface,我希望grpModelProperties的高度更低。如何使组中文本框的上方和底部的距离相同 public void createControl(Composite parent) { Composite composite = new Composite(parent, SWT.NULL); composite.setLayout(new FillLayout()); Group grpModelProperties = new Group(composite

我希望
grpModelProperties
的高度更低。如何使组中文本框的上方和底部的距离相同

public void createControl(Composite parent) {

     Composite composite = new Composite(parent, SWT.NULL);
     composite.setLayout(new FillLayout());

     Group grpModelProperties = new Group(composite, SWT.SHADOW_IN);
     grpModelProperties.setText("ETL Transformation Model");
     grpModelProperties.setLayout(new GridLayout(2, false));


     GridData data = new GridData(GridData.FILL_HORIZONTAL);
     text = new Text(grpModelProperties, SWT.NONE);
     text.setLayoutData(data);

     Button button = new Button(grpModelProperties, SWT.PUSH);
     button.setText("File System...");
     button.addSelectionListener(new SelectionAdapter() {
     public void widgetSelected(SelectionEvent e) {
     FileDialog dialog = new FileDialog(getShell(), SWT.NULL);
     String path = dialog.open();

     if (path != null) {
     File file = new File(path);
     if (file.isFile())
      displayFiles(new String[] { file.toString()});
      else
      displayFiles(file.list());

     }
}

您已经为包含
组的
组合
指定了
FillLayout
,因此该组将被拉伸以填充对话框区域

对组合使用不同的布局:

Composite composite = new Composite(parent, SWT.NULL);
composite.setLayout(new GridLayout());

Group grpModelProperties = new Group(composite, SWT.SHADOW_IN);
grpModelProperties.setText("ETL Transformation Model");
grpModelProperties.setLayout(new GridLayout(2, false));

// Layout data for the group in the composite,
// Fill the row, stays at the top of the dialog
grpModelProperties.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false));

在这里,我使用了
GridLayout
并将组的
GridData
设置为只填充行。

您已经为包含
组的
组合
指定了
FillLayout
,因此组正在拉伸以填充对话框区域

对组合使用不同的布局:

Composite composite = new Composite(parent, SWT.NULL);
composite.setLayout(new GridLayout());

Group grpModelProperties = new Group(composite, SWT.SHADOW_IN);
grpModelProperties.setText("ETL Transformation Model");
grpModelProperties.setLayout(new GridLayout(2, false));

// Layout data for the group in the composite,
// Fill the row, stays at the top of the dialog
grpModelProperties.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false));
在这里,我使用了
GridLayout
并将组的
GridData
设置为只填充行