2017-12-22 6 views
0

Ich versuche, einen Listener zu meiner Combobox auf javafx hinzufügen.
Hier ist der Code für meine Combobox:Wie füge ich einen Listener zu Combobox Java

ObservableList<String> options = 
     FXCollections.observableArrayList(
       "Option1", 
       "Option2", 
       "Option3", 
       "Option4" 
     ); 

final ComboBox comboBox; 

public ComboBox getComboBox() { 
    return comboBox; 
} 

public ComboBoxStatus() { 
    this.comboBox = new ComboBox(options); 
    comboBox.setValue("option1"); 
} 

und ich möchte noch etwas hinzufügen:
, wenn so etwas wie option1 geändert wurde oben ich eine Funktion OPTION2 rufen und tun etw

Wie zu sehen habe den Standardwert option1 hinzugefügt. Ich möchte also eine Funktion aufrufen, wenn ich den aktuellen Wert, z. B. option1, als Standardwert auf z. option2.

Auf meinem Hauptprogramm habe ich While-Schleife und möchte den aktuell ausgewählten Wert aus meiner Combobox lesen.

Wie lese ich den aktuell ausgewählten Wert?

+0

Sie auf den Wert ändern hören. 'ComboBox.valueProperty() addListener ((beobachtbar, oldValue, newValue) -> {doSomething();});' – DVarga

+0

Danke, das hat für mich funktioniert !!! –

Antwort

0

Probieren Sie etwas wie dieses

 fComboBoxDefault.valueProperty().addListener(new ChangeListener() { 
      @SuppressWarnings("rawtypes") 
      @Override 
      public void changed(ObservableValue ov, Object arg1, 
        Object arg2) { 

        // Do Something ... 

       } 
      }  
     }); 
+0

Vielen Dank für Ihre Antwort! Kannst du mir sagen, was ist der Unterschied zwischen dieser Lösung und der von DVarge (siehe Kommentar oben) –

+0

Sie sind eigentlich die gleichen. –

Verwandte Themen