if(incasationBegin > 0)
{
int anwser = JOptionPane.showConfirmDialog(null, Config.QUESTION,"Confirm", JOptionPane.YES_NO_OPTION);
if(anwser == 1)
{
jList0.setSelectedIndex(incasationBegin);
return;
}
}
incasationBegin = jList0.getSelectedIndex();如何在不调用setSelectedIndex操作的情况下实现jList0ListSelectionValueChanged?因为当我单击“确认”弹出选项时,当我单击“否”时,新项目仍然被选中。我尝试在返回前添加incasationBegin =0;,但在第一次单击确认弹出。
发布于 2011-05-11 14:11:09
让我看看我是否正确地理解了你。您正在向ListSelectionListener中添加JList,并希望阻止对setSelectedIndex的调用触发valueChanged事件,是吗?
您可以在这里尝试许多不同的方法:
setSelectedIndex.
jList0.addListSelectionListener(...的调用,以至于当您调用jList0.addListSelectionListener(...侦听器valueChanged方法时不存在侦听器,检查某些“已启用的条件”,例如读取boolean isEnabled。在调用setSelectedIndex之前将此条件设置为false,然后将其设置为true。setSelectedIndex之前调用jList0.removeListSelectionListener(..。在调用之后再次将侦听器添加到列表中。https://stackoverflow.com/questions/5965058
复制相似问题