SWT 文本字段:使文本集中在行尾

SWT Text field: make text focused at the end of the line

我有一个 Java SWT 文本,我将其设置为长文本。当 shell 打开时,我希望文本集中在末尾,以便用户可以看到文本的结尾。

这是我得到的:

    Text text = new Text(new Group(parent, SWT.NONE), SWT.BORDER | SWT.SINGLE);
    text.setText(someLongText);
    text.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

我试过 SWT.RIGHT 但没有用。

为了说明我的意思,我使用了 MS Paint 中的保存功能。第一张图是我想要实现的。第二个是我得到的。

Desired behavior

Current behavior

您可以将选区设置到文末:

text.setSelection(text.getText().length());

在 macOS 上测试这仅在 Text 具有 SWT.MULTI 样式而不是 SWT.SINGLE 时有效,但在其他平台上它可能适用于 SWT.SINGLE.