1
jComboBox2.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));

実行時にコンボボックスに要素を追加する方法を知りたいですか?

4

2 に答える 2

5

「実行時にコンボボックスに要素を追加する方法を知りたいですか?」

見るDefaultComboBoxModel#addElement

  • public void addElement(E anObject)

インターフェイスからコピーされた説明:MutableComboBoxModel
モデルの最後に項目を追加します。このメソッドの実装は、項目が追加されたことをすべての登録済み ListDataListeners に通知する必要があります。

あなたの場合、モデルへの参照がないため、これを行う必要があります

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

コンボボックスの使い方を参照してください


ドキュメントの読み方も学びます。ここに行くだけで、DefaultComboBoxModelなじみのない他のクラスを検索できたはずです。

于 2014-02-08T06:00:43.723 に答える
1

その答えがあなたに役立つと思います。

私はその答えからこれをコピーしました。

コンボボックスに がある場合MutableComboBoxModelは、次のことができます

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

これは、次の呼び出しと同等ですJComboBox#addItem(実装については以下を参照してください)。

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

ただし、モデル側で変更を行い、ビューを通過しない場合は、モデルを直接変更するのがベスト プラクティスだと思います (ユーザーがビューで編集できるようにする場合を除く)。

于 2014-02-08T06:04:18.560 に答える