2014-02-08 7 views
1
jComboBox2.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" })); 

Я хочу знать, как добавить элементы в comboBox во время выполнения?Как добавить элементы в jcombobox динамически?

+0

это могло бы помочь: http://bit.ly/1g5kmzH –

+0

@ failed.down, а затем эта страница подходит ....: D – ExceptionSlayer

ответ

5

«Я хочу знать, как добавить элементы в comboBox во время выполнения?»

См DefaultComboBoxModel#addElement

  • public void addElement(E anObject)

Описание скопированный из интерфейса: MutableComboBoxModel
добавляет элемент в конце модели. Реализация этого метода должна уведомить всех зарегистрированных ListDataListeners, что элемент был добавлен.

В вашем случае, так как у вас нет ссылки на модели, вам нужно сделать, это

DefaultComboBoxModel model = (DefaultComboBoxModel)jComboBox2.getModel(); 
model.addElement(...) 

И посмотреть How to Use ComboBoxes


узнать также прочитать документацию. Просто зайдите Here, и вы могли бы найти DefaultComboBoxModel или любой другой класс, с которым вы не знакомы.

+1

Также проверьте учебник здесь -> http://docs.oracle .com/javase/tutorial/uiswing/components/combobox.html – mikemil

+0

+1 примечание == для добавления элементов во время выполнения лучше использовать MutableComboBoxModel, как предлагается в ответ разработчиком @developer, известным как Insar (+1) – mKorbel

+0

, это решение бросает непроверенное предупреждение – Chicodelarosa

1

Я думаю, что Answer поможет вам.

Я скопировал это из этого ответа.

Если выпадающий имеет MutableComboBoxModel, вы можете сделать следующее

MutableComboBoxModel model = (MutableComboBoxModel)combo.getModel(); 
model.addElement(elementToAdd); 

Это эквивалентно вызову JComboBox#addItem (см ниже для реализации):

public void addItem(Object anObject) { 
    checkMutableComboBoxModel(); 
    ((MutableComboBoxModel)dataModel).addElement(anObject); 
} 

Но я думаю, что это лучше всего изменить модель напрямую, если вы хотите внести изменения на стороне модели, а не просматривать представление (кроме того, чтобы предоставить пользователю возможность редактировать в представлении)

Смежные вопросы