java.lang.Object java.util.EventObject java.awt.AWTEvent java.awt.event.InvocationEvent
public class InvocationEvent
当通过 AWT 事件调度线程进行调度时,在 Runnable
上执行 run()
方法的事件。此类可以用作 ActiveEvent
的参考实现,而不用于声明新类和定义 dispatch()
。
通过调用 invokeLater
和 invokeAndWait
,可以将此类的实例置于 EventQueue
上。客户端代码可以使用这一事实来编写 invokeLater
和 invokeAndWait
的替代函数,无需在任何 AWTEventListener
对象中编写特殊代码。
ActiveEvent
,
EventQueue.invokeLater(java.lang.Runnable)
,
EventQueue.invokeAndWait(java.lang.Runnable)
,
AWTEventListener
,
序列化表格
字段摘要 | |
---|---|
protected boolean |
catchExceptions 如果 dispatch() 捕获了 Throwable 并将其存储在异常实例变量中,则设置为 true。 |
static int |
INVOCATION_DEFAULT 所有 InvocationEvent 的默认 id。 |
static int |
INVOCATION_FIRST 标记调用事件 id 范围内的第一个整数 id。 |
static int |
INVOCATION_LAST 标记调用事件 id 范围内的最后一个整数 id。 |
protected Object |
notifier 在 Runnable.run() 方法返回之后立即调用其 notifyAll() 方法的对象(可能为 null)。 |
protected Runnable |
runnable 调用其 run() 方法的 Runnable。 |
从类 java.util.EventObject 继承的字段 |
---|
source |
构造方法摘要 | |
---|---|
protected |
InvocationEvent(Object source, int id, Runnable runnable, Object notifier, boolean catchThrowables) 构造一个具有指定源和 ID 的 InvocationEvent ,此源和 ID 将在被指派时执行 runnable 的 run 方法。 |
|
InvocationEvent(Object source, Runnable runnable) 构造一个具有指定源的 InvocationEvent ,此源将在被指派时执行 runnable 的 run 方法。 |
|
InvocationEvent(Object source, Runnable runnable, Object notifier, boolean catchThrowables) 构造一个具有指定源的 InvocationEvent ,此源将在被指派时执行 runnable 的 run 方法。 |
方法摘要 | |
---|---|
void |
dispatch() 执行 Runnable 的 run() 方法并在 run() 返回时通知 notifier(如果有)。 |
Exception |
getException() 返回在执行 Runnable 的 run() 方法时捕获的任何 Exception。 |
Throwable |
getThrowable() 返回在执行 Runnable 的 run() 方法时捕获的任何 Throwable。 |
long |
getWhen() 返回此事件发生时的时间戳。 |
String |
paramString() 返回标识此事件的参数字符串。 |
从类 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 |
字段详细信息 |
---|
public static final int INVOCATION_FIRST
public static final int INVOCATION_DEFAULT
public static final int INVOCATION_LAST
protected Runnable runnable
protected Object notifier
protected boolean catchExceptions
构造方法详细信息 |
---|
public InvocationEvent(Object source, Runnable runnable)
InvocationEvent
,此源将在被指派时执行 runnable 的
run
方法。
这是一个很有用的构造方法。对于 InvocationEvent(source, runnable) 形式的调用而言,其行为与调用 InvocationEvent
(source, runnable, null, false) 完全相同。
如果 source
为 null
,则此方法抛出 IllegalArgumentException
。
source
- 产生事件的
Object
runnable
- 执行其
run
方法的
Runnable
IllegalArgumentException
- 如果
source
为 null
InvocationEvent(Object, Runnable, Object, boolean)
public InvocationEvent(Object source, Runnable runnable, Object notifier, boolean catchThrowables)
InvocationEvent
,此源将在被指派时执行 runnable 的
run
方法。如果 notifier 为非
null
,则会在
run
返回之后立即对它调用
notifyAll()
。
对于 InvocationEvent(source, runnable, notifier, catchThrowables) 形式的调用而言,其行为与调用 InvocationEvent
(source, InvocationEvent.INVOCATION_DEFAULT, runnable, notifier, catchThrowables) 完全相同。
如果 source
为 null
,则此方法抛出 IllegalArgumentException
。
source
- 产生事件的
Object
runnable
- 执行其
run
方法的
Runnable
notifier
- 在
Runnable.run
返回之后调用其
notifyAll
方法的对象
catchThrowables
- 指定
dispatch
是否应该在执行
Runnable
的
run
方法时捕获 Throwable,或者应该将那些 Throwable 传播到 EventDispatchThread 的调度循环中
IllegalArgumentException
- 如果
source
为 null
InvocationEvent(Object, int, Runnable, Object, boolean)
protected InvocationEvent(Object source, int id, Runnable runnable, Object notifier, boolean catchThrowables)
InvocationEvent
,此源和 ID 将在被指派时执行 runnable 的
run
方法。如果 notifier 为非
null
,则将在
run
返回之后立即对它调用
notifyAll
。
注意,传递无效 id
会导致不确定的行为。如果 source
为 null
,则此方法抛出 IllegalArgumentException
。
source
- 产生事件的
Object
id
- 事件的 ID
runnable
- 执行其
run
方法的
Runnable
notifier
- 在
Runnable.run
返回之后调用其
notifyAll
方法的
Object
catchThrowables
- 指定
dispatch
是否应该在执行
Runnable
的
run
方法时捕获 Throwable,或者应该将那些 Throwable 传播到 EventDispatchThread 的调度循环中
IllegalArgumentException
- 如果
source
为 null
方法详细信息 |
---|
public void dispatch()
run()
方法并在
run()
返回时通知 notifier(如果有)。
ActiveEvent
中的
dispatch
public Exception getException()
run()
方法时捕获的任何 Exception。
public Throwable getThrowable()
run()
方法时捕获的任何 Throwable。
public long getWhen()
public String paramString()
AWTEvent
中的
paramString