2016-04-22 92 views
1

在RedHat 7上运行的应用程序,使用JavaFX 8编写的触摸屏界面。 键盘有一个“下部键盘”按钮。如果用户选择一个TextField组件,然后降低键盘,选择相同的(仍然聚焦的字段)将再次弹出键盘。JavaFx TextArea不弹出键盘

如果用户选择了一个TextArea组件,则会初始显示键盘。如果他们然后放下键盘,并选择相同(仍然为焦点的文本区域),则键盘将不显示。

如果重点丢失,然后在TextArea中获得,键盘将显示。

为什么这样,以及如何在显示字段时让键盘显示?

+0

您能否提供[SSCCE](http://sscce.org)? – AndreLDM

回答

0

这是一个小黑客,但如果我完全理解你的问题,以下可能适合你。

textArea.onTouchReleasedProperty().addListener(new ChangeListener<EventHandler<? super TouchEvent>>() { 
    public void changed(ObservableValue<? extends EventHandler<? super TouchEvent>> observable, EventHandler<? super TouchEvent> oldValue, EventHandler<? super TouchEvent> newValue) { 
     if(newValue) { 
      if(textArea.isFocused()) { 
        textArea.getParent().requestFocus(); 
      } 

      textArea.requestFocus(); 
     } 
    } 
}); 
+1

这个工作的调整,因为在RedHat 7'TouchEvents'是'MouseEvents' – AerusDar