Установите положение каретки в javafx.scene.control.TextArea и javafx.scene.control.TextField
Мне нужно установить положение каретки вручную в моем коде.
В javafx.scene.control.TextInputControl есть getCaretPosition(), но нет метода setter.
Как установить положение каретки?
Ответ 1
TextArea ta = new TextArea();
ta.setText("1234567890");
ta.positionCaret(4);
Ответ 2
Вы можете использовать функцию positionCaret, как упоминалось ранее. Но не забудьте обернуть его в Platform.runLater. В противном случае это может не работать вообще.
Platform.runLater( new Runnable() {
@Override
public void run() {
textArea.positionCaret( 0 );
}
});
Ответ 3
В TextInputControl есть два метода, которые позволяют манипулировать кареткой.
Это: -
selectPositionCaret (int pos) - выбор текста между последней позицией каретки до текущей позиции каретки, которую вы ввели.