模块 java.desktop

类 InputEvent

所有已实现的接口:
Serializable
已知子类:
KeyEvent , MouseEvent

public abstract sealed class InputEvent extends ComponentEvent permits KeyEvent , MouseEvent
所有组件级输入事件的根事件类。输入事件在它们起源的源正常处理之前被传递给监听。这允许监听和组件子类“消费”事件,以便源不会以默认方式处理它们。例如,在 Button 组件上使用 mousePressed 事件将阻止 Button 被激活。
密封类层次结构图:
Sealed class hierarchy graph for InputEventSealed class hierarchy graph for InputEvent
自从:
1.1
参见:
  • 字段详细信息

    • SHIFT_MASK

      @Deprecated (since ="9") public static final int SHIFT_MASK
      已弃用。
      建议改用SHIFT_DOWN_MASK和getModifiersEx()
      Shift 键修饰符常量。
      参见:
    • CTRL_MASK

      @Deprecated (since ="9") public static final int CTRL_MASK
      已弃用。
      建议改用 CTRL_DOWN_MASK 和 getModifiersEx()
      Control 键修饰符常量。
      参见:
    • META_MASK

      @Deprecated (since ="9") public static final int META_MASK
      已弃用。
      建议使用 META_DOWN_MASK 和 getModifiersEx() 代替
      Meta 键修饰符常量。
      参见:
    • ALT_MASK

      @Deprecated (since ="9") public static final int ALT_MASK
      已弃用。
      建议使用 ALT_DOWN_MASK 和 getModifiersEx() 代替
      Alt 键修饰符常量。
      参见:
    • ALT_GRAPH_MASK

      @Deprecated (since ="9") public static final int ALT_GRAPH_MASK
      已弃用。
      建议使用 ALT_GRAPH_DOWN_MASK 和 getModifiersEx() 代替
      AltGraph 键修饰符常量。
      参见:
    • BUTTON1_MASK

      @Deprecated (since ="9") public static final int BUTTON1_MASK
      已弃用。
      建议使用 BUTTON1_DOWN_MASK 和 getModifiersEx() 代替
      Mouse Button1 修饰符常量。
      参见:
    • BUTTON2_MASK

      @Deprecated (since ="9") public static final int BUTTON2_MASK
      已弃用。
      建议改用 BUTTON2_DOWN_MASK 和 getModifiersEx() 。请注意,BUTTON2_MASK 与 ALT_MASK 具有相同的值。
      Mouse Button2 修饰符常量。
      参见:
    • BUTTON3_MASK

      @Deprecated (since ="9") public static final int BUTTON3_MASK
      已弃用。
      建议改用 BUTTON3_DOWN_MASK 和 getModifiersEx() 。请注意,BUTTON3_MASK 与 META_MASK 具有相同的值。
      Mouse Button3 修饰符常量。
      参见:
    • SHIFT_DOWN_MASK

      public static final int SHIFT_DOWN_MASK
      Shift 键扩展修饰符常量。
      自从:
      1.4
      参见:
    • CTRL_DOWN_MASK

      public static final int CTRL_DOWN_MASK
      Control 键扩展修饰符常量。
      自从:
      1.4
      参见:
    • META_DOWN_MASK

      public static final int META_DOWN_MASK
      Meta 键扩展修饰符常量。
      自从:
      1.4
      参见:
    • ALT_DOWN_MASK

      public static final int ALT_DOWN_MASK
      Alt 键扩展修饰符常量。
      自从:
      1.4
      参见:
    • BUTTON1_DOWN_MASK

      public static final int BUTTON1_DOWN_MASK
      Mouse Button1 扩展修饰符常量。
      自从:
      1.4
      参见:
    • BUTTON2_DOWN_MASK

      public static final int BUTTON2_DOWN_MASK
      Mouse Button2 扩展修饰符常量。
      自从:
      1.4
      参见:
    • BUTTON3_DOWN_MASK

      public static final int BUTTON3_DOWN_MASK
      Mouse Button3 扩展修饰符常量。
      自从:
      1.4
      参见:
    • ALT_GRAPH_DOWN_MASK

      public static final int ALT_GRAPH_DOWN_MASK
      AltGraph 键扩展修饰符常量。
      自从:
      1.4
      参见:
  • 方法详情

    • getMaskForButton

      public static int getMaskForButton(int button)
      一种为任何现有鼠标按钮获取掩码的方法。返回的掩码可以用于不同的目的。以下是其中一些:
      参数:
      button - 是一个数字,表示从 1 开始的按钮。例如,
       int button = InputEvent.getMaskForButton(1);
       
      将与
       int button = InputEvent.getMaskForButton(MouseEvent.BUTTON1);
       
      具有相同的含义,因为 MouseEvent.BUTTON1 等于 1。如果鼠标具有三个启用的按钮(请参阅 MouseInfo.getNumberOfButtons() ),则左列中的值将传递到该方法将从右列返回相应的值:
        button   returned mask
        BUTTON1  BUTTON1_DOWN_MASK 
        BUTTON2  BUTTON2_DOWN_MASK 
        BUTTON3  BUTTON3_DOWN_MASK 
       
      如果鼠标具有三个以上的启用按钮,则可以接受更多值(4、5 等)。这些扩展按钮没有分配常量。此方法返回的额外按钮的按钮掩码没有分配名称,如前三个按钮掩码。

      此方法具有以下实现限制。它仅返回有限数量按钮的掩码。最大数量取决于实现,可能会有所不同。此限制由鼠标上可能假设存在的相关按钮数量定义,但它大于 MouseInfo.getNumberOfButtons()

      返回:
      现有鼠标按钮的掩码。
      抛出:
      IllegalArgumentException - 如果 button 小于零或大于为按钮保留的按钮掩码数
      自从:
      1.7
      参见:
    • isShiftDown

      public boolean isShiftDown()
      返回 Shift 修饰符在此事件上是否按下。
      返回:
      Shift 修饰符是否在此事件上关闭
    • isControlDown

      public boolean isControlDown()
      返回 Control 修饰符在此事件上是否关闭。
      返回:
      控制修饰符是否关闭此事件
    • isMetaDown

      public boolean isMetaDown()
      返回 Meta 修饰符是否关闭此事件。
      返回:
      Meta 修饰符是否关闭此事件
    • isAltDown

      public boolean isAltDown()
      返回 Alt 修饰符在此事件上是否关闭。
      返回:
      Alt 修饰符是否关闭此事件
    • isAltGraphDown

      public boolean isAltGraphDown()
      返回 AltGraph 修饰符在此事件上是否关闭。
      返回:
      AltGraph 修饰符是否关闭此事件
    • getWhen

      public long getWhen()
      返回此事件发生时的时间戳与 UTC 时间 1970 年 1 月 1 日午夜之间的差值(以毫秒为单位)。
      返回:
      时间戳与 1970 年 1 月 1 日午夜 UTC 之间的毫秒差
    • getModifiers

      @Deprecated (since ="9") public int getModifiers()
      已弃用。
      建议改用扩展修饰键和getModifiersEx()
      返回此事件的修饰符掩码。
      返回:
      此事件的修饰符掩码
    • getModifiersEx

      public int getModifiersEx()
      返回此事件的扩展修饰符掩码。

      扩展修饰符就是以_DOWN_MASK后缀结尾的修饰符,比如ALT_DOWN_MASK、BUTTON1_DOWN_MASK等。

      扩展修饰符表示所有模态键的状态,例如 ALT、CTRL、META 和事件发生后的鼠标按钮。

      例如,如果用户按下按钮 1其次是按钮 2, 然后按相同的顺序释放它们,生成以下事件序列:

        MOUSE_PRESSED : BUTTON1_DOWN_MASK 
        MOUSE_PRESSED : BUTTON1_DOWN_MASK | BUTTON2_DOWN_MASK 
        MOUSE_RELEASED : BUTTON2_DOWN_MASK 
        MOUSE_CLICKED : BUTTON2_DOWN_MASK 
        MOUSE_RELEASED :
        MOUSE_CLICKED :
       

      不建议使用 == 比较此方法的返回值,因为将来可以添加新的修饰符。例如,检查 SHIFT 和 BUTTON1 是否按下,但 CTRL 是否按下的适当方法由以下代码演示:

        int onmask = SHIFT_DOWN_MASK | BUTTON1_DOWN_MASK;
        int offmask = CTRL_DOWN_MASK;
        if ((event.getModifiersEx() & (onmask | offmask)) == onmask) {
          ...
        }
       
      即使添加了新的修饰符,上面的代码也能正常工作。
      返回:
      此事件的扩展修饰符掩码
      自从:
      1.4
    • consume

      public void consume()
      使用此事件,以便发起它的源不会以默认方式处理它。
      重写:
      consume 在类 AWTEvent
    • isConsumed

      public boolean isConsumed()
      返回此事件是否已被消费。
      重写:
      isConsumed 在类 AWTEvent
      返回:
      该事件是否被消费
      参见:
    • getModifiersExText

      public static String  getModifiersExText(int modifiers)
      返回描述扩展修改键和鼠标按钮的字符串,例如“Shift”、“Button1”或“Ctrl+Shift”。这些字符串可以通过更改 awt.properties 文件进行本地化。

      请注意,传递负参数是不正确的,并且会导致返回未指定的字符串。零参数意味着没有传递任何修饰符,将导致返回一个空字符串。

      参数:
      modifiers - 修饰符掩码,描述事件的扩展修饰键和鼠标按钮
      返回:
      事件期间按住的扩展修改键和鼠标按钮组合的文本描述。
      自从:
      1.4