2015-03-01 2 views
0

У меня есть следующий код:Combo Box не наблюдается

public class GuiView extends Application { 

    private ObservableList<String> shareNames = FXCollections.observableArrayList(); 

    public void start(Stage stage) { 
    ... 
    ComboBox<String> comboBox = new ComboBox<String>(); 
    comboBox.getItems().addAll(this.shareNames); 

    MenuItem open = new MenuItem("Open..."); 
    open.setOnAction(e -> { 
     // FileChooser code... 
     if (selctedFile != null) { 
     this.shareNames.addAll("teststring"); 
     } 
    }); 
    } 
} 

Когда я бегу через открытый диалог успешно поле со списком не обновляется и показывает СравниваемаяСтрока. Что здесь происходит?

ответ

1

Вы обновляете shareNames, но это не тот список, который используется в поле со списком.

Либо заменить

comboBox.getItems().addAll(this.shareNames); 

с

comboBox.setItems(this.shareNames); 

или заменить

this.shareNames.addAll("teststring"); 

с

comboBox.getItems().add("teststring");