我有一个JList,它在每次双击列表中的值时运行代码。按下按钮时会填充该值。我的问题是每次点击按钮,然后双击JList值,它会重复该代码,但是多次按下该按钮。双击按钮按下的次数
例如,第一次看起来一切都很好,但如果再次按下按钮来更改JList值,它将执行两次双击代码。如果我第三次按它,它将执行三次代码,依此类推。如果这是一件容易的事,我对此非常抱歉。感谢您的任何信息。下面的代码让我知道如果更多是必要的。
public DefaultListModel results(StringBuilder message)
{
DefaultListModel model = new DefaultListModel();
model.addElement(message);
showOption.setModel(model);
MouseListener mouseListener = new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
if (e.getClickCount() == 2)
{
int index = showOption.locationToIndex(e.getPoint());
Object o = showOption.getModel().getElementAt(index);
System.out.println("Double-clicked on: " + o.toString());
}
}
};
showOption.addMouseListener(mouseListener);
return model;
}
为什么每次都必须创建一个新的'DefaultListModel'和'MouseListener'?你有没有注意到你的代码甚至不依赖于你继续创建的任何东西? –