2013-09-29 64 views

回答

2

使用正則表達式來過濾項目列表,只需更新JCombobox與新的ComboBoxModel

喜歡的東西:

DefaultComboBoxModel comboModel = ((DefaultComboBoxModel)yourComboBox.getModel()); 

.... 

// invoke regex on yourArray 

comboModel.removeAllElements(); 

for(int i = 0; i<yourArray.length; i++) { 
    comboModel.addElement(yourArray[i]); 
} 

[編輯]

,如果你不想使用兩個列表:一個是實際的數據,二 - 用於過濾的數據,

寫自定義ComboBoxModel,您可以在其中實現「隱藏」功能。

+0

如果我使用正則表達式,我將不得不將值存儲在另一個數組......這意味着我會重複數據?或者我錯過了什麼 –

+0

如果你想「隱藏」,是的使用2個數組沒有辦法。我沒有看到其他方式 –

+0

,因爲'removeAllItems'指的是'JCombobox',在這裏我使用'DefaultComboBoxModel' –

相關問題