2010-08-20 4 views
-1

OK, donc je suis en train d'obtenir la valeur de la sélectionnée JList et moi avons essayé de lire the API ... J'utilise un DefaultListModule pour stocker ce qui est dans mon JList ...java - obtenir la valeur sélectionnée defaultlistmodule

public DefaultListModel model = new DefaultListModel(); 

et un JList

public JList list; 

et voici comment ajouter:

model.addElement("Testing for this example"); 

et voici où Je me NullPointerException:

Object dropped = model.getElementAt(list.getSelectedIndex()); 

et voici comment je mis en place mon JList

list = new JList(model); 
    list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); 
    list.addMouseListener(this); 

Répondre

3

Si vous obtenez un modèle ou NullPointerException soit la liste est nulle. Puisque vous avez affiché l'initialisation du modèle, je suppose que vous n'avez pas initialisé la liste elle-même.

public JList list = new JList(model); 

Assurez-vous également que getSelectedIndex ne renvoie pas -1.

+0

Oups, j'ai oublié d'ajouter que je l'ai déjà. – nn2

+0

Oh, je sais pourquoi! C'est parce que je l'enlève de la liste ALORS j'obtiens le nom ainsi je reçois NULL! : D – nn2

+0

Si vous avez fait cela, il est impossible que vous obteniez un NPE sur cette ligne: model.getElementAt (list.getSelectedIndex()) ;. getElementAt renvoie uniquement ArrayIndexOutOfBoundsException et getSelectedIndex ne lève jamais. Veuillez poster la pile de l'exception. Oh. Pas de soucis alors. –

Questions connexes