OpenJFX 14 TextField NodeOrientation RIGHT_TO_LEFT Невозможно переместить курсор с помощью клавиатуры на Windows 10 - PullRequest
3 голосов
/ 13 апреля 2020

Я на Windows 10 машине с Oracle JDK 14 и OpenJFX 14 с установленными. Когда фокус клавиатуры находится в элементе управления TextField, а ориентация этого элемента управления направлена ​​справа налево, нажатие клавиш со стрелками влево и вправо на клавиатуре не перемещает курсор в пределах TextField. Вот простая программа, которая демонстрирует проблему.

import javafx.application.Application;
import javafx.geometry.NodeOrientation;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.TextField;
import javafx.stage.Stage;

public class FxTxtFld extends Application {

    @Override
    public void start(Stage primaryStage) throws Exception {
        TextField txtFld = new TextField("sampler");
        txtFld.setNodeOrientation(NodeOrientation.RIGHT_TO_LEFT);
        Group root = new Group(txtFld);
        Scene scene = new Scene(root);
        primaryStage.setScene(scene);
        primaryStage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}

Запустите приведенный выше код, а затем просто попробуйте переместить курсор, нажимая клавиши со стрелками на клавиатуре. Когда я это делаю, курсор не двигается. Я могу перемещать курсор, щелкая мышью внутри текстового содержимого TextField. Также клавиша со стрелкой вверх перемещает курсор к букве s , то есть к началу текста, а клавиша со стрелкой вниз перемещает курсор к букве r , но нажимая клавишу клавиши со стрелками влево и вправо не перемещают курсор вообще. Обратите внимание, что если ориентация слева направо, клавиши со стрелками перемещают курсор.

Когда я распечатываю свойства Java [System], я вижу следующее.

user.language  en
user.country   US

Я гуглил по терминам Курсор текстового поля javafx не двигается , но я видел только результаты, которые говорят о манипулировании курсором с помощью кода, а не с помощью действий пользователя.

РЕДАКТИРОВАТЬ

Возможно, кто-то может проверить, существует ли эта проблема также в более ранних версиях JavaFX?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...