【问题标题】:JList - getting value from ClickJList - 从 Click 中获取价值
【发布时间】:2014-08-05 17:59:42
【问题描述】:

有没有办法使用 ListSelectionListener 或 MouseAdapter 来获取有关选定值的信息(例如,如果 value 是一个字符串),是否有任何内置方法?

我只知道如何获取正确的索引,但不知道内容或 content.toString()

我正在添加这样的元素:

{
    DefaultListModel listModel;

    listModel.addElement(name);
}

@编辑
谢谢你的帮助。 我通过这样做解决了我的问题(为了后代,所以他们不需要像我一样搜索):

    list.addMouseListener(new MouseAdapter(){
          @Override
          public void mouseClicked(MouseEvent e) {
              System.out.println("Mouse click.");
              int index = list.getSelectedIndex();
              System.out.println("Index Selected: " + index);
              String s = (String) list.getSelectedValue();
              System.out.println("Value Selected: " + s.toString());
          }
    });

【问题讨论】:

标签: java swing jlist listselectionlistener


【解决方案1】:

使用JList 时,您可以简单地使用JList#getSelectedValue(),它将返回当前选择的实际对象。

如果您在MouseListener 中执行此操作,最好使用JList#locationToIndex,然后使用它的索引从JList 获取值

 String value = (String)list.getModel().getElementAt(list.locationToIndex(e.getPoint()));

【讨论】:

    猜你喜欢
    • 2017-07-09
    • 2016-10-05
    • 2013-04-11
    • 2020-11-07
    • 2018-09-14
    • 2021-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多