2011-11-28 32 views

Trả lời

29
TextArea ta = new TextArea(); 
ta.setText("1234567890"); 
ta.positionCaret(4); 
+12

positionCaret() ... tên gây nhầm lẫn cho phương thức đó. – ceklock

+3

yep, smth như 'setCaretPosition' sẽ thuận tiện –

+0

Có hành vi khá lạ trong TextArea, như mũi tên xuống không di chuyển xuống. – brian

5

Bạn có thể sử dụng hàm positionCaret như đã đề cập trước đây. Nhưng hãy chắc chắn để bọc nó trong Platform.runLater. Nếu không nó có thể không hoạt động chút nào.

Platform.runLater(new Runnable() { 
    @Override 
    public void run() { 
     textArea.positionCaret(0); 
    } 
}); 
+4

Chỉ khi chạy từ chủ đề khác so với Giao diện người dùng chính. – DeepSidhu1313

1

Có hai phương pháp trong TextInputControl cho phép thao tác vị trí dấu mũ. Đó là: -

  1. selectPositionCaret (int pos) - Chọn văn bản giữa các vị trí dấu nháy cuối cùng lên đến vị trí dấu nháy hiện tại mà bạn đã nhập.

  2. positionCaret (int pos) - Đặt vị trí dấu mũ hiện tại làm sạch lựa chọn trước đó.

Vì vậy, tôi nghĩ trong trường hợp của bạn, bạn muốn sử dụng phương phápCaretet để đặt vị trí mà không có bất kỳ lựa chọn nào.

Các vấn đề liên quan