NetBeans中JList选择监听器调用次数递增问题求助
解决JList监听器调用次数递增的问题
问题根源在于你在evenementsJlistValueChanged方法内重复给JList添加ListSelectionListener。每次触发选择事件时,这个方法都会被自动生成的监听器调用,而你又在方法里新增一个监听器,导致JList上的监听器数量越来越多。后续每次触发事件时,所有已添加的监听器都会执行,最终出现调用次数逐次递增的情况。
修正后的代码
将选择处理逻辑直接写在evenementsJlistValueChanged方法中,无需再添加新的监听器:
private void evenementsJlistValueChanged(javax.swing.event.ListSelectionEvent evt) { if (!evt.getValueIsAdjusting()) { selectRssEvnt(evenementsJlist.getSelectedIndex()); } }
说明
自动生成的代码已经为JList绑定了一个ListSelectionListener,该监听器会在选择事件触发时调用evenementsJlistValueChanged方法。你只需要在这个方法内直接处理选择逻辑即可,重复添加监听器只会导致冗余的回调执行。
内容的提问来源于stack exchange,提问作者Jay
相关产品推荐
相关产品推荐

