JavaTM 2 Platform
Standard Ed. 6

java.awt.event
類別 InvocationEvent

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  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.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
 
建構子摘要
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
 

欄位詳細資訊

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(Object source,
                       Runnable runnable)
建構一個具有指定源的 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(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) 完全相同。

如果 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(Object source,
                          int id,
                          Runnable runnable,
                          Object notifier,
                          boolean catchThrowables)
建構一個具有指定源和 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
從以下版本開始:
1.5

getWhen

public long getWhen()
返回此事件發生時的時間戳。

返回:
此事件的時間戳
從以下版本開始:
1.4

paramString

public String paramString()
返回標識此事件的參數字元串。此方法對事件日誌記錄和除錯很有用。

覆寫:
類別 AWTEvent 中的 paramString
返回:
標識事件及其屬性的字元串

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only