如何使用一个ListSelectionEvent处理多个jLists

时间:2011-09-25 09:06:14

标签: java listener jlist

我的班级frmMain中有三个jLists。我创建了一个名为ListActions的类。下面的代码适用于一个jList。它返回为一个jList单击的值。

如何区分其他三个jList?或者我是否需要为每个监听器创建一个单独的类?

我需要根据点击的jList执行操作。我试图看看我是否可以访问被点击的jList的变量名,但是找不到这样做的方法......

class ListActions implements ListSelectionListener {

public void valueChanged(ListSelectionEvent evt) {

    if (!evt.getValueIsAdjusting()) {

        JList list = (JList) evt.getSource();

        int iSelectedDatabase = list.getSelectedIndex();
        Object objSelectedDatabase = list.getModel().getElementAt(iSelectedDatabase);
        String sSelectedDatabase = objSelectedDatabase.toString();


        JOptionPane.showConfirmDialog(null, sSelectedDatabase);

    }
}

}

谢谢, - 杰森

1 个答案:

答案 0 :(得分:2)

JList继承自Component

因此,您可以使用getName()方法获取Component的名称,并知道哪个名称已被调用。