Double-click event on JList element

Lobo picture Lobo · Dec 3, 2010 · Viewed 74.1k times · Source

I have a JList with a DefaultListModel.

How I can make an item in a JList react to double-click event?

Answer

Mohamed Saligh picture Mohamed Saligh · Dec 3, 2010
String[] items = {"A", "B", "C", "D"};
JList list = new JList(items);

list.addMouseListener(new MouseAdapter() {
    public void mouseClicked(MouseEvent evt) {
        JList list = (JList)evt.getSource();
        if (evt.getClickCount() == 2) {

            // Double-click detected
            int index = list.locationToIndex(evt.getPoint());
        } else if (evt.getClickCount() == 3) {

            // Triple-click detected
            int index = list.locationToIndex(evt.getPoint());
        }
    }
});