コードで手動でキャレット位置を設定する必要があります。getCaretPosition()
アンダーはありますがjavafx.scene.control.TextInputControl
、セッター方式はありません。
キャレットの位置を設定するにはどうすればよいですか?
コードで手動でキャレット位置を設定する必要があります。getCaretPosition()
アンダーはありますがjavafx.scene.control.TextInputControl
、セッター方式はありません。
キャレットの位置を設定するにはどうすればよいですか?
TextArea ta = new TextArea();
ta.setText("1234567890");
ta.positionCaret(4);
前述のように positionCaret 関数を使用できます。ただし、必ず Platform.runLater でラップしてください。そうしないと、まったく機能しない可能性があります。
Platform.runLater( new Runnable() {
@Override
public void run() {
textArea.positionCaret( 0 );
}
});
TextInputControl には、キャレット位置の操作を可能にする 2 つのメソッドがあります。これらは :-
selectPositionCaret(int pos) - 最後のキャレット位置から入力した現在のキャレット位置までのテキストを選択します。
positionCaret(int pos) - 現在のキャレット位置を設定し、以前の選択もクリアします。
あなたの場合、positionCaret メソッドを使用して、選択なしで位置を設定したいと思います。
TextField の最後に追加したい場合は、次のことができます
TextFieldName.positionCaret(TextFieldName.getText().length());
これにより、The end に Curser が追加されます。