Как отключить событие изменения выбора JList и вызывать его только по двойному щелчку? - PullRequest
3 голосов
/ 06 мая 2010

Как видно из заголовка ... Я бы хотел, чтобы элементы в JList были "выбраны" только тогда, когда они дважды щелкнули Каков наилучший способ достижения такого поведения?

1 Ответ

1 голос
/ 06 мая 2010

Вы можете попробовать что-то вроде этого:

JList list = new JList(dataModel);
...
MouseListener mouseListener = new MouseAdapter() 
{
    public void mouseClicked(MouseEvent e) 
    {
        if (e.getClickCount() == 2) // double click?
        {
            int posicion = list.locationToIndex(e.getPoint());
            list.setSelectedIndex(posicion);
        }
        else if (e.getClickCount() == 1) // single click?
            list.clearSelection() ;
    }
};
list.addMouseListener(mouseListener);

Скажите мне, если это работает ... Я не могу проверить это здесь.

...