如何将JList中的选定项目转换为字符串

时间:2014-02-12 18:19:33

标签: java swing user-interface jlist

我实际上无法检索存储在JList中的项目。我正在使用Eclipse,它促使我参与JList的参数化,我做了String),我需要一种方法来检索值并将它们存储在String变量中。< / p>

初​​始化:

JList<String> songlist;

songlist = new JList<String>(list); //list is a DefaultListModel

用户用歌曲填充JList ......

然后我尝试检索所选歌曲以显示有关它的信息:

String value = songlist.getSelectedItem().toString();

......我收到错误:

  

对于类型JList

,方法getSelectedItem()未定义

当我尝试getSelectedValue()getElementAt()(与getSelectedIndex()配对时)同样如此

2 个答案:

答案 0 :(得分:1)

使用getSelectedIndex()代替getSelectedItem()

JList中不存在此类方法,有关详细信息,请参阅http://docs.oracle.com/javase/7/docs/api/javax/swing/JList.html

答案 1 :(得分:1)

如果您的选择模式为SINGLE,请使用

  • public E getSelectedValue() - 返回最小的选定单元格索引的值;在列表中仅选择单个项目时所选的值。选择多个项目时,它只是最小选定索引的值。如果没有选择,则返回null。

这是一种方便的方法,它只返回getMinSelectionIndex的模型值。

如果您的选择模式为MULTIPLE,请使用

  • public List<E> getSelectedValuesList() - 根据列表中的索引,按升序排列所有选定项目的列表。

请参阅JList API