2009-06-18 6 views
1

Je lie un JComboBox à un List observable. J'efface et ajoute Objects de la liste observable. Cela fonctionne correctement et reflète les modifications dans le JComboBox correctement.JComboBox getSelectedItem() ne change pas

Le problème est que je ne peux pas sélectionner le contenu de la liste à l'aide de la souris, bien que les éléments nouvellement ajoutés soient correctement affichés dans la liste déroulante lorsqu'ils sont développés. Le getSelectedItem() est toujours bloqué sur le premier élément de la liste.

List<Object> sourceListObserver = 
    ObservableCollections.observableList(new ArrayList<Object>()); 

La liaison est effectuée à l'aide du concepteur d'interface graphique Netbeans. J'ai également essayé d'utiliser DefaultComboBoxModel.

DefaultComboBoxModel model = new DefaultComboBoxModel(); 
wireSourceComboBox.setModel(model); 

En utilisant wireSourceComboBox.removeAllItems(); et wireSourceComboBox.addItem(qb);

Toujours le même comportement après le retrait et l'ajout d'objets à la zone de liste déroulante.

+1

S'il vous plaît, pouvez-vous indiquer la façon dont vous choisissez la valeur JCB? A quoi ressemble votre modèle? –

+0

J'ai modifié la question, j'espère que cette réponse vous réponds. – Dupdroid

+0

J'ai remarqué que je met en évidence les éléments en déplaçant la souris sur puis puis en appuyant sur entrer ça marche. Vraiment étrange. – Dupdroid

Répondre

0

sans un exemple de travail, c'est difficile à prouver, mais vous devez probablement déclencher l'écoute des événements pour que l'interface utilisateur suive correctement votre modèle.

voir AbstractListModel.fireContentsChanged

Questions connexes