2016-06-15 68 views
0

我在Netbeans中使用Java,我有一個組合框,允許用戶在列表中選擇一個選項或輸入自己的選項。 我知道你可以通過一個文本框添加一個項目到一個組合框,我想知道是否有一種方式,當用戶在組合框中輸入他們自己的選項時,他們點擊輸入他們的選項被添加到列表中。是否可以添加用戶從同一個jcombobox進入jcombobox的項目?

我試圖

BusinessTypeComboBox.getItem(typeofBusiness); BusinessTypeComboBox.addItem(BusinessTypeComboBox.getText());

有誰知道這是可能的

回答

0

如果我理解你的權利,在我會做這種方式:

  1. 添加的KeyListener到ComboBox知道,當用戶進入一個新的項目並確認。
  2. 檢索組合框中的項目列表。

    ComboBoxModel model = comboBox.getModel(); 
    List list = new ArrayList(); 
    for(int i=0; i<model.getSize(); i++) { 
        list.add(model.getElementAt(i)); 
    } 
    
  3. 將輸入的項目追加到列表中。
  4. 用附加列表重新初始化組合框。

    model = new DefaultComboBoxModel(list.toArray()); 
    comboBox.setModel(model);