簡體   English   中英

如何使用javafx根據來自另一個組合框的單擊值設置組合框的值

[英]How to set a values for combobox based on a clicked value from another combobox using javafx

我是javafx的新手,想要根據第一個組合框實時選擇的值為另一個組合框設置一個新值。 我試過這個代碼但不行

@FXML
public void A(ActionEvent event) {
String a[] = {"A","B","C"}; 
list2 = FXCollections.observableArrayList(a);
ChunitS.setItems(list2);
if (ChunitS.getValue() == (null)) {
return;
} else {
list1 = FXCollections.observableArrayList(ChunitS.getValue().toString());
ChassS.setItems(list1);
}
}

如果我在第一個組合框中選擇“A”,則應更新第二個組合框以使其中的值為“A”。

嘗試使用String output = ChunitS.getSelectionModel().getSelectedItem().toString(); 在on動作中首先使用組合框功能來獲取所選內容。 然后在第二個組合框中設置所選值。 希望有所幫助

您可以將偵聽器添加到第一個ComboBox:

@FXML private ComboBox<String> combo1,combo2;

@Override
public void initialize(URL location, ResourceBundle resources) {
   //Init ComboBox items
   combo1.setItems(
       FXCollections.observableArrayList(new String[]{"A","B"})
   );
   combo2.setItems(FXCollections.observableArrayList());
   //add ActionListener for Example
   combo1.setOnAction(e->{
       combo2.getItems().add(
              combo1.getSelectionModel().getSelectedItem()
        );
    });
}

,或使用按鈕(@FXML'onAction'參考):

@FXML
public void handleButtonA(ActionEvent event) {
        combo2.getItems().add(
              combo1.getSelectionModel().getSelectedItem()
        );
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM