user2598911
user2598911

Reputation: 379

Getting the elements selected of a jlist into a string list

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

Answers (2)

Reimeus
Reimeus

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

Uri
Uri

Reputation: 89859

If you're using multiple selections, why are you using getSelectedValue instead of getSelectedValues or (for JDK 7) getSelectedValuesList?

Upvotes: 2

Related Questions