Reputation: 379
I have a jlist which has some elements and works properly. Then I am trying to add the selected jlist elements to string list, but it wont show any results (no errors though). Whats wrong?
inal JList list = new JList(arraylist.toArray());
list.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
JOptionPane.showMessageDialog(
null, list, "Select", JOptionPane.QUESTION_MESSAGE);
ListSelectionListener listSelectionListener = new ListSelectionListener() {
public void valueChanged(ListSelectionEvent e) {
String lstr = list.getSelectedValue().toString();
List<String> tolist = Arrays.asList(lstr);
System.out.println(tolist);
}
};
Updated: ( Fixed)
final ListSelectionListener listSelectionListener = new ListSelectionListener() {
public void valueChanged (ListSelectionEvent e) {
String lstr = list.getSelectedValuesList().toString();
System.out.println(lstr);
List<String> tolist = Arrays.asList(lstr);
System.out.println(tolist);
}
};
list.addListSelectionListener(listSelectionListener);
JOptionPane.showMessageDialog( null, list, "Select", JOptionPane.QUESTION_MESSAGE);
Upvotes: 2
Views: 780
Reputation: 159874
Register your ListSelectionListener
with your JList
and after the anonymous inner class has been declared
ListSelectionListener listSelectionListener = new ListSelectionListener() {
public void valueChanged(ListSelectionEvent e) {
// ...
}
};
list.addListSelectionListener(listSelectionListener);
Read: How to Write a List Selection Listener
Upvotes: 3
Reputation: 89859
If you're using multiple selections, why are you using getSelectedValue instead of getSelectedValues or (for JDK 7) getSelectedValuesList?
Upvotes: 2