У меня есть вопрос об использовании виртуальной клавиатуры на ПК с сенсорным экраном с Ubuntu. Мне удалось показать виртуальную клавиатуру, когда текстовое поле сфокусировано на java:
-Dcom.sun.javafx.isEmbedded=true
-Dcom.sun.javafx.touch=true
-Dcom.sun.javafx.virtualKeyboard=javafx
-Dcom.sun.javafx.vk.adjustwindow=true
Но когда клавиатура отображается, она перекрывает текстовые поля под клавиатурой.
Согласно официальной документации http://docs.oracle.com/javase/8/javafx/user-interface-tutorial/embed.htm
Виртуальная клавиатура отображается автоматически, когда поле ввода текста находится в фокусе. Обратите внимание, что элемент управления, связанный с клавиатурой, остается видимым, когда клавиатура отображается. Нет необходимости поднимать родительский этап вверх. Клавиатура выдвигается из нижней области, толкая родительскую сцену вверх, чтобы элемент управления, с которым связана клавиатура, оставался видимым на экране.
Он должен автоматически подтолкнуть текстовое поле вверх и сделать его видимым.
Я попытался реализовать решение из виртуальная клавиатура JavaFX перекрывает узлы, но оно не работало, поскольку по требованию.
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.TextField;
import javafx.scene.layout.BorderPane;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage stage) {
TextField textField = new TextField();
textField.setPromptText("Enter comment");
BorderPane borderPane = new BorderPane(new Button("Click"));
borderPane.setBottom(textField);
Scene scene = new Scene(borderPane,1850,1200);
stage.setScene(scene);
stage.show();
}
}
Приложение виртуальной клавиатуры JavaFX — клавиатура скрыта
Приложение виртуальной клавиатуры JavaFX — клавиатура открыта
Буду признателен за любые предложения или решения.
Заранее спасибо.