光标没有放在textarea中单击的位置

时间:2014-02-24 15:21:14

标签: javafx-2

我们正在使用javafx开发桌面应用程序,其中光标没有显示在文本框中单击的位置,而是显示在文本的末尾。我们做了什么,首先我们通过使用插入位置取消选择所选文本。发生的事情是,一旦我们选择了它被选中/聚焦的文本区域,并且光标默认在文本的末尾,通过第二次点击我们得到我们点击的光标。这些文本区域位于Vbox中。

1 个答案:

答案 0 :(得分:0)

如果您想将光标放在文本的末尾。

private void placeCursor()  {

       textarea.positionCaret( textarea.getText().length());
}

如果您想将光标放在当前行的末尾。

private void placeCursor() {

    int location =  textarea.getCaretPosition();
    String[] x =  textarea.getText().split("\n");
    int wLength = 0;
    for (String s : x) {
        wLength = wLength + s.length();
        if ((location - 1) < wLength) {
            break;
        }
        wLength = wLength + 1;
    }
    textarea.positionCaret(wLength);

}