2016-04-22 14 views
1

Anwendung läuft auf RedHat 7, Touchscreen-Oberfläche, geschrieben mit JavaFX 8. Tastatur hat eine "untere Tastatur" -Taste. Wenn der Benutzer eine TextField-Komponente auswählt, wird die Tastatur abgesenkt, und durch Auswahl derselben (noch fokussiertes Feld) wird die Tastatur erneut geöffnet.JavaFx TextArea öffnet keine Tastatur

Wenn der Benutzer eine TextArea-Komponente auswählt, wird zunächst die Tastatur angezeigt. Wenn sie dann die Tastatur absenken und denselben (noch fokussierten Textbereich) auswählen, wird die Tastatur nicht angezeigt.

Wenn der Fokus verloren geht und dann in der TextArea erreicht wird, wird die Tastatur angezeigt.

Warum ist das so, und wie mache ich die Tastatur anzeigen, wenn das Feld ausgewählt ist?

+0

Können Sie eine [SSCCE] (http://sscce.org) bereitstellen? – AndreLDM

Antwort

0

Dies ist ein wenig hackish, aber wenn ich Ihre Frage vollständig verstehe, könnte das folgende für Sie arbeiten.

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

Ein Tweak funktionierte, wie auf RedHat 7 'TouchEvents' sind 'MouseEvents' – AerusDar