我在我的 SWT GUI 应用程序中使用 GridLayout。我为每个网格单元定义了以下 GridData。网格单元本身只是一个标签。
GridData gridData = new GridData();
gridData.horizontalAlignment = GridData.FILL;
gridData.grabExcessHorizontalSpace = true;
gridData.grabExcessVerticalSpace = true;
gridData.heightHint = 25;
gridData.widthHint = 25;
gridData.verticalAlignment = GridData.VERTICAL_ALIGN_CENTER;
gridData.verticalIndent = 10;
我像这样创建每个标签元素 -
Label l = new Label(shell, SWT.BORDER);
l.setAlignment(SWT.CENTER);
l.setText("some text");
l.setLayoutData( gridData );
现在我的问题是,尽管在标签本身上使用了 verticalAlignment 属性、verticalIndent 属性和 setAlignment,但我无法使文本相对于网格单元区域( 25 x 25 )垂直居中对齐。我想我错过了一些东西。如何在网格单元中实现垂直居中对齐?