Java SWT在屏幕上集中绝对合成

时间:2017-02-18 12:34:49

标签: java swt

我正在开发一个应用程序,我的雇主要求它应该具有绝对大小(1024 x 768)。是否可以将此绝对合成插入到具有填充布局(或任何其他)的另一个复合中,并将绝对布局设置为始终集中?

我对开发屏幕相当陌生,所以我对这个概念感到困惑。

提前致谢。

1 个答案:

答案 0 :(得分:1)

您可以使用GridLayout将复合材料置于Shell中心。

类似的东西:

Display display = new Display();

Shell shell = new Shell(display, SWT.SHELL_TRIM);

shell.setText("Stack Overflow");

shell.setFullScreen(true);

shell.setLayout(new GridLayout());

// Composite, just using a border here to show where it is
Composite composite = new Composite(shell, SWT.BORDER);

// Center composite in the shell using all available space 
composite.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, true, true));

composite.setLayout(new GridLayout());

// Something to put in the composite
Label label = new Label(composite, SWT.BEGINNING);
label.setText("Text");

shell.open();

while (!shell.isDisposed()) {
    if (!display.readAndDispatch())
      display.sleep();
  }

display.dispose();