查看组件的事件

Java Bean 视图显示对可视类中的组件设置的所有事件。

可以使用 Java Bean 视图来查看事件。这是一个树形视图,它显示正在编辑的类及其 Java bean,以及其组件显示为子代的容器类。

除了显示 JavaBeans 及其容器/组件关系之外,Java Bean 视图还有显示事件的三种方式:

要查看组件的事件:

  1. 在 Java Bean 视图工具栏中,单击菜单(箭头)按钮。
  2. 选择下列其中一个选项:
    • 显示事件
    • 专家事件

    当选择了显示事件时,就会将每个组件所使用的事件作为子代显示在树中。对于要由组件使用的事件,必须存在一个已注册的侦听器,并且回调方法中必须有一些代码。Visual Editor 所使用的已识别源代码模式的列表在事件的源代码模式一节中描述。在下图中,Java Bean 视图显示了一些事件,其中 JFrame 具有 windowOpened 事件,按钮具有 actionPerformedEvent。按钮还具有用于其已启用属性的 PropertyChangeListener,并且这是以蓝色箭头而不是绿色箭头显示的。
    基本事件

    每个事件都由源组件(正在使用的示例中的 JFrame 或 JButton)、实现使用 addXXXListener(XXXListener) 添加至源代码的侦听器接口的类以及回调方法主体中的一些代码组成。在显示事件方式下,当组件源代码显示时,它的回调方法是作为子代显示的。事件树中的项为绿色箭头 绿色箭头,如果项是用于属性更改事件的,则为蓝色箭头 蓝色箭头图标

    专家事件方式下,组件的每个侦听器都显示为一个子树节点,并且事件显示在每个侦听器下面。这会增加树中的项数,但它显示了更多关于事件如何与组件连接的详细信息。这两种方式的选项让您可以决定要使用哪种详细信息级别。

    在专家方式下,用于侦听器的图标显示了侦听器类的类型。如果侦听器是实现侦听器接口的匿名内部类,则使用 事件存在图标 图标,如果侦听器是继承侦听器适配器类的匿名内部类,则使用 事件存在类 图标。

    除了用于侦听器的匿名内部类之外,Visual Editor 还能解析和识别已命名类和共享侦听器。如果侦听器在专家方式下不是匿名的,则图标为 生成侦听器图标。如果侦听器由多个组件共享,则使用 共享类对象。如果侦听器类由单个事件使用,则它们列示为侦听器的子代。但是,如果侦听器类由组件的多个事件侦听器接口使用,则在“专家”方式下,这些侦听器接口作为侦听器类的单独子代显示,如下图所示:
    共享专家事件

    以下代码语句显示了它的源代码。内部侦听器类 IvjEventHandler 由 keyPressedEvent 的第一个按钮(this)使用一次,由“取消”按钮使用两次,其中由 keyPressed(它是键事件的一部分)使用一次,由 actionPerformed(它是操作事件的一部分)使用另一次。

    class IvjEventHandler implements java.awt.event.ActionListener, java.awt.event.KeyListener {    public void actionPerformed(java.awt.event.ActionEvent e) {     
       if (e.getSource() == VCEStyle2.this.getCancelButton())    
       connEtoC3(e);   
    };   
     public void keyPressed(java.awt.event.KeyEvent e) {     
        if (e.getSource() == VCEStyle2.this.getCancelButton())    
        connEtoC2(e);   
    if (e.getSource() == VCEStyle2.this)    
        connEtoC1(e);   
    };   
     public void keyReleased(java.awt.event.KeyEvent e) {};   
     public void keyTyped(java.awt.event.KeyEvent e) {};
    }; 

上级主题:使用 Visual Editor 来处理事件

相关概念
Java Bean 视图

相关任务
对组件添加事件
从组件中删除事件
查看事件的源代码

(C) Copyright IBM Corporation 1999, 2004. All Rights Reserved.