我个人的一点看法
事件监听器不是都有相应的添加方法么addActionListener()
添加之后交给相应程序调用吧好像可以把程序窗口看成很多层,事件发生好像都首先看是在哪一个区域,交给那个区域最上层(也就是我们可以直接看到的那一层)的控件(例如:按钮)来处理,如果没有相应的处理在传递给第二层,如此类推,一层层向下传直到传给最底层(我猜JAVA是最后传给虚拟机,而C++是传给系统)。
大致应该是这样的机制,不只对你有没有帮助。本来我为了做一个基于JAVA的系统,想要实现事件的抛出和监听机制,结果看到现在也没能实现,还在努力ing……

解决方案 »

  1.   

    事件监听器中的方法是回调(callback)方法
      

  2.   

    自己也可以定义事件,在Core Java的第一卷中有讲的
      

  3.   

    vm在运行时会启动若干线程,如果引用awt包的话,就会启动awt事件监听线程,该线程能够扑获到所有事件,然后遍历已经注册侦听事件的控件(即用addActionListener等),找到符合条件的控件,即事件源,将事件推给他执行。
    我个人的理解。