В настоящее время я работаю над приложением javafx на windows. Приложение предназначено для использования на столе windows, для ввода которого требуется виртуальная клавиатура.
Я пытаюсь встроить клавиатуру в приложение, поэтому не могу использовать клавиатуру по умолчанию windows.
Я написал метод, обеспечивающий правильные системные свойства. Тем не менее, виртуальная клавиатура не имеет стиля во время выполнения, поэтому я попытался добавить свой собственный, используя
import com.sun.glass.ui.Window;
, любой подход с использованием
final Iterator<Window> windows = Window.getWindows()
не работает как метод для (Iterator< Window >)
не может быть найден.
public static void showkeyboard(TextArea node) {
//ensure required properties are set
System.setProperty("com.sun.javafx.touch", "true");
System.setProperty("com.sun.javafx.isEmbedded", "true");
System.setProperty("com.sun.javafx.virtualKeyboard", "javafx");
node.getProperties().put("vkType", "text");
// node.getProperties().put(FXVK.useFXVK(), "mykeyboard");
if (node != null) {
Platform.runLater(() -> {
FXVK.init(node);
FXVK.attach(node);
setVirtualKeyboradCss(node);
});
}
}
public static void setVirtualKeyboradCss(Node node) {
List<Window> windows = Window.getWindows(); //error
System.out.println(windows.size());
for(Window w : windows){
System.out.println(w.getTitle());
if(w.getTitle()=="" /* type selector popup would be more ideal */){
//set stylesheet
System.out.println("Apply stylesheet Here");
}
}
}
любая помощь будет высоко ценится!