2017-10-17 6 views
0

J'ai un texte SWT Java sur lequel j'ai défini un long texte. Lorsque le shell s'ouvre, je veux que le texte soit mis au point à la fin pour que l'utilisateur puisse voir la fin du texte.SWT Champ de texte: mettre le texte en évidence à la fin de la ligne

C'est ce que je suis:

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

J'ai essayé avec SWT.RIGHT mais il n'a pas aidé. Pour illustrer ce que je veux dire, j'ai utilisé la fonctionnalité de sauvegarde dans MS Paint. La première image est ce que je veux réaliser. La seconde est ce que je reçois.

Desired behavior

Current behavior

Répondre

1

Vous pouvez définir la sélection à la fin du texte:

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

Test sur macOS cela ne fonctionne que si le Text a le style SWT.MULTI plutôt que SWT.SINGLE mais sur d'autres plates-formes, il peut fonctionner avec SWT.SINGLE.