2012-03-25 4 views
8

Guten Tag Entwickler :)JavaFX TextArea- onChange Ereignis

Hat JavaFX Komponente, TextArea-, haben die Unterstützung für ein Ereignis wie onTextChange oder ähnliches? Ja, ich weiß für keyPressed, keyTyped ... aber wie Ereignis behandeln, wenn eine andere "Aktion" Änderungen an TextArea (z. B. txArea.setText ("einige Text")).

Antwort

14

Wie bei allen JavaFX, fügen Sie einfach einen Listener zur TextArea textProperty() hinzu.

+0

Oh, yes.Thank Sie Jonathan –

39

Dies ist der Code:

textArea.textProperty().addListener(new ChangeListener<String>() { 
    @Override 
    public void changed(final ObservableValue<? extends String> observable, final String oldValue, final String newValue) { 
     // this will run whenever text is changed 
    } 
}); 
+6

+1 Stimme. Ich bevorzugte Ihre Antwort als die oben für das Codebeispiel. Rushing, um die schnellste Antwort zu geben, ist nicht immer gut. – hirikarate

+2

Ist es möglich, dies in SceneBuilder oder nur in Code hinzuzufügen? – Czechnology

0

Lambda-Ausdrücke verwenden

textArea.textProperty().addListener((obs,old,niu)->{ 
    // TODO here 
});