禁用和启用监听
来源:互联网 发布:mac强制退出 编辑:程序博客网 时间:2024/05/17 04:45
public EventListener[] removeDetailTableListener(Class type) { KDTable detail = getDetailTable(); if (detail != null) { EventListenerList eventList = detail.getListenerList(); EventListener[] lists = eventList.getListeners(type); if (lists != null) { for (int i = 0; i < lists.length; i++) { eventList.remove(type, lists[i]); } return lists; } } return new EventListener[0]; } public void restoreDetailTableListener(Class type, EventListener[] lists) { if ((lists == null) || (lists.length == 0)) { return; } KDTable detail = getDetailTable(); if (detail != null) { EventListenerList eventList = detail.getListenerList(); for (int i = 0; i < lists.length; i++) { eventList.add(type, lists[i]); } } } private void innerLoadFields() { EventListener[] lsts = removeDetailTableListener(KDTPropertyChangeListener.class); loadFields(); restoreDetailTableListener(KDTPropertyChangeListener.class, lsts); }