java 的事件散发以及listener的实现

java 的事件分发以及listener的实现java.awt.component中对事件进行了分析,然后再调用listener的各个方法p

java 的事件分发以及listener的实现
java.awt.component中对事件进行了分析,然后再调用listener的各个方法

protected void processMouseEvent(MouseEvent e) {
MouseListener listener = mouseListener;
       if (listener != null) {   //檢查是否有已經註冊過的listener
            int id = e.getID();
            switch(id) {
              case MouseEvent.MOUSE_PRESSED:
                listener.mousePressed(e);
                break;
              case MouseEvent.MOUSE_RELEASED:
                listener.mouseReleased(e);
                break;
              case MouseEvent.MOUSE_CLICKED:
                listener.mouseClicked(e);
                break;
              case MouseEvent.MOUSE_EXITED:
                listener.mouseExited(e);
                break;
              case MouseEvent.MOUSE_ENTERED:
                listener.mouseEntered(e);
                break;
            }
        }
    }