Java SWT中与字体基线垂直对齐的行布局

Java SWT中与字体基线垂直对齐的行布局,java,fonts,swt,Java,Fonts,Swt,SWT的RowLayout在这方面是很好的,但是我希望所有包含文本的小部件在字体基线上垂直对齐 是否有现成的自定义布局可以做到这一点 可能有实现它所需要的东西,但我只想问一下,以前是否做过。找不到,但这似乎是一个典型的要求 在屏幕截图的顶部是行布局,下面是我手动排列到基线的固定布局(WindowBuilder对此进行了捕捉) 行布局有一个名为的字段。只要将其设置为true,您就可以了 center指定行中的控件是在水平布局的每个单元格中垂直居中,还是在垂直布局的每个单元格中水平居中。默认值为fa

SWT的RowLayout在这方面是很好的,但是我希望所有包含文本的小部件在字体基线上垂直对齐

是否有现成的自定义布局可以做到这一点

可能有实现它所需要的东西,但我只想问一下,以前是否做过。找不到,但这似乎是一个典型的要求

在屏幕截图的顶部是行布局,下面是我手动排列到基线的固定布局(WindowBuilder对此进行了捕捉)


行布局
有一个名为的字段。只要将其设置为
true
,您就可以了

center
指定行中的控件是在水平布局的每个单元格中垂直居中,还是在垂直布局的每个单元格中水平居中。默认值为
false


谢谢它不是像素完美的(在Mac OS上),但它很接近,所以我现在就这样离开它。@Phantrast太棒了!如果你能找到更好的解决方案,请在这里发布。如果没有,请考虑接受我的回答。
public static void main(String[] args)
{
    Display display = new Display();
    Shell shell = new Shell(display);

    RowLayout layout = new RowLayout();
    layout.center = true;

    shell.setLayout(layout);
    shell.setText("StackOverflow");

    new Label(shell, SWT.NONE).setText("Label");
    new Button(shell, SWT.PUSH).setText("Button");

    shell.pack();
    shell.open();

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

    display.dispose();
}