返回介绍

java.awt.event 类 InvocationEvent

发布于 2019-10-04 09:50:15 字数 12119 浏览 1157 评论 0 收藏 0

java.lang.Object
  └java.util.EventObject
      └java.awt.AWTEvent
          └java.awt.event.InvocationEvent
所有已实现的接口:
ActiveEvent, Serializable

public class InvocationEvent
extends AWTEvent
 
implements ActiveEvent
 

当通过 AWT 事件调度线程进行调度时,在 Runnable 上执行 run() 方法的事件。此类可以用作 ActiveEvent 的参考实现,而不用于声明新类和定义 dispatch()

通过调用 invokeLaterinvokeAndWait ,可以将此类的实例置于 EventQueue 上。客户端代码可以使用这一事实来编写 invokeLaterinvokeAndWait 的替代函数,无需在任何 AWTEventListener 对象中编写特殊代码。

从以下版本开始:
1.2
另请参见:
ActiveEvent , EventQueue.invokeLater(java.lang.Runnable) , EventQueue.invokeAndWait(java.lang.Runnable) , AWTEventListener , 序列化表格

字段摘要
protected booleancatchExceptions

如果 dispatch() 捕获了 Throwable 并将其存储在异常实例变量中,则设置为 true。

staticintINVOCATION_DEFAULT

所有 InvocationEvent 的默认 id。

staticintINVOCATION_FIRST

标记调用事件 id 范围内的第一个整数 id。

staticintINVOCATION_LAST

标记调用事件 id 范围内的最后一个整数 id。

protected Objectnotifier

在 Runnable.run() 方法返回之后立即调用其 notifyAll() 方法的对象(可能为 null)。

protected Runnablerunnable

调用其 run() 方法的 Runnable。

从类 java.awt.AWTEvent 继承的字段
ACTION_EVENT_MASK, ADJUSTMENT_EVENT_MASK, COMPONENT_EVENT_MASK, consumed, CONTAINER_EVENT_MASK, FOCUS_EVENT_MASK, HIERARCHY_BOUNDS_EVENT_MASK, HIERARCHY_EVENT_MASK, id, INPUT_METHOD_EVENT_MASK, INVOCATION_EVENT_MASK, ITEM_EVENT_MASK, KEY_EVENT_MASK, MOUSE_EVENT_MASK, MOUSE_MOTION_EVENT_MASK, MOUSE_WHEEL_EVENT_MASK, PAINT_EVENT_MASK, RESERVED_ID_MAX, TEXT_EVENT_MASK, WINDOW_EVENT_MASK, WINDOW_FOCUS_EVENT_MASK, WINDOW_STATE_EVENT_MASK
从类 java.util.EventObject 继承的字段
source
构造方法摘要
protectedInvocationEvent(Objectsource, intid, Runnablerunnable, Objectnotifier, booleancatchThrowables)

构造一个具有指定源和 ID 的 InvocationEvent ,此源和 ID 将在被指派时执行 runnable 的 run 方法。

InvocationEvent(Objectsource, Runnablerunnable)

构造一个具有指定源的 InvocationEvent ,此源将在被指派时执行 runnable 的 run 方法。

InvocationEvent(Objectsource, Runnablerunnable, Objectnotifier, booleancatchThrowables)

构造一个具有指定源的 InvocationEvent ,此源将在被指派时执行 runnable 的 run 方法。

方法摘要
voiddispatch()

执行 Runnable 的 run() 方法并在 run() 返回时通知 notifier(如果有)。

ExceptiongetException()

返回在执行 Runnable 的 run() 方法时捕获的任何 Exception。

ThrowablegetThrowable()

返回在执行 Runnable 的 run() 方法时捕获的任何 Throwable。

longgetWhen()

返回此事件发生时的时间戳。

StringparamString()

返回标识此事件的参数字符串。

从类 java.awt.AWTEvent 继承的方法
consume, getID, isConsumed, setSource, toString
从类 java.util.EventObject 继承的方法
getSource
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

字段详细信息

INVOCATION_FIRST

public static final int INVOCATION_FIRST
标记调用事件 id 范围内的第一个整数 id。
另请参见:
常量字段值

INVOCATION_DEFAULT

public static final int INVOCATION_DEFAULT
所有 InvocationEvent 的默认 id。
另请参见:
常量字段值

INVOCATION_LAST

public static final int INVOCATION_LAST
标记调用事件 id 范围内的最后一个整数 id。
另请参见:
常量字段值

runnable

protected Runnable runnable
调用其 run() 方法的 Runnable。

notifier

protected Object notifier
在 Runnable.run() 方法返回之后立即调用其 notifyAll() 方法的对象(可能为 null)。

catchExceptions

protected boolean catchExceptions
如果 dispatch() 捕获了 Throwable 并将其存储在异常实例变量中,则设置为 true。如果设置为 false,则会将 Throwable 传播到 EventDispatchThread 的调度循环中。

构造方法详细信息

InvocationEvent

public InvocationEvent(Objectsource,
                       Runnablerunnable)
构造一个具有指定源的 InvocationEvent ,此源将在被指派时执行 runnable 的 run 方法。

这是一个很有用的构造方法。对于 InvocationEvent(source, runnable) 形式的调用而言,其行为与调用 InvocationEvent (source, runnable, null, false) 完全相同。

如果 sourcenull ,则此方法抛出 IllegalArgumentException

参数:
source - 产生事件的 Object
runnable - 执行其 run 方法的 Runnable
抛出:
IllegalArgumentException - 如果 source 为 null
另请参见:
InvocationEvent(Object, Runnable, Object, boolean)

InvocationEvent

public InvocationEvent(Objectsource,
                       Runnablerunnable,
                       Objectnotifier,
                       booleancatchThrowables)
构造一个具有指定源的 InvocationEvent ,此源将在被指派时执行 runnable 的 run 方法。如果 notifier 为非 null ,则会在 run 返回之后立即对它调用 notifyAll()

对于 InvocationEvent(source, runnable, notifier, catchThrowables) 形式的调用而言,其行为与调用 InvocationEvent (source, InvocationEvent.INVOCATION_DEFAULT, runnable, notifier, catchThrowables) 完全相同。

如果 sourcenull ,则此方法抛出 IllegalArgumentException

参数:
source - 产生事件的 Object
runnable - 执行其 run 方法的 Runnable
notifier - 在 Runnable.run 返回之后调用其 notifyAll 方法的对象
catchThrowables - 指定 dispatch 是否应该在执行 Runnablerun 方法时捕获 Throwable,或者应该将那些 Throwable 传播到 EventDispatchThread 的调度循环中
抛出:
IllegalArgumentException - 如果 source 为 null
另请参见:
InvocationEvent(Object, int, Runnable, Object, boolean)

InvocationEvent

protected InvocationEvent(Objectsource,
                          intid,
                          Runnablerunnable,
                          Objectnotifier,
                          booleancatchThrowables)
构造一个具有指定源和 ID 的 InvocationEvent ,此源和 ID 将在被指派时执行 runnable 的 run 方法。如果 notifier 为非 null ,则将在 run 返回之后立即对它调用 notifyAll

注意,传递无效 id 会导致不确定的行为。如果 sourcenull ,则此方法抛出 IllegalArgumentException

参数:
source - 产生事件的 Object
id - 事件的 ID
runnable - 执行其 run 方法的 Runnable
notifier - 在 Runnable.run 返回之后调用其 notifyAll 方法的 Object
catchThrowables - 指定 dispatch 是否应该在执行 Runnablerun 方法时捕获 Throwable,或者应该将那些 Throwable 传播到 EventDispatchThread 的调度循环中
抛出:
IllegalArgumentException - 如果 source 为 null

方法详细信息

dispatch

public void dispatch()
执行 Runnable 的 run() 方法并在 run() 返回时通知 notifier(如果有)。
指定者:
接口 ActiveEvent 中的 dispatch

getException

public Exception getException()
返回在执行 Runnable 的 run() 方法时捕获的任何 Exception。
返回:
如果抛出 Exception,则返回对 Exception 的引用;如果没有抛出 Exception 或者如果此 InvocationEvent 没有捕获异常,则返回 null

getThrowable

public Throwable getThrowable()
返回在执行 Runnable 的 run() 方法时捕获的任何 Throwable。
返回:
如果抛出 Throwable,则返回对 Throwable 的引用;如果没有抛出 Throwable 或者如果此 InvocationEvent 没有捕获 Throwable,则返回 null

getWhen

public long getWhen()
返回此事件发生时的时间戳。
返回:
此事件的时间戳
从以下版本开始:
1.4

paramString

public String paramString()
返回标识此事件的参数字符串。此方法对事件日志记录和调试很有用。
覆盖:
AWTEvent 中的 paramString
返回:
标识事件及其属性的字符串

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文