- 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()
メソッドを実行するイベントです。 このクラスは、新しいクラスを宣言してdispatch()
を定義する代わりに、ActiveEvent
の参照実装として使用できます。このクラスのインスタンスは、
invokeLater
およびinvokeAndWait
の呼出しによってEventQueue
に置かれます。 これによりクライアントのコードでは、特別な場合のコードを書くことなくAWTEventListener
オブジェクト内に、invokeLater
およびinvokeAndWait
に代わる関数を記述できます。特定の
InvocationEvent
インスタンスのid
パラメータがINVOCATION_FIRST
からINVOCATION_LAST
までの範囲にない場合に、未指定の動作が発生します。
-
-
フィールドのサマリー
フィールド 修飾子と型 フィールド 説明 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()メソッドがただちに呼び出されるObjectです(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 (ディスパッチされたときにrunnableのrun
メソッドを実行します)でInvocationEvent
を構築します。InvocationEvent(Object source, Runnable runnable)
指定されたソース(ディスパッチされたときにrunnableのrun
メソッドを実行します)でInvocationEvent
を構築します。InvocationEvent(Object source, Runnable runnable, Object notifier, boolean catchThrowables)
指定されたソース(ディスパッチされたときにrunnableのrun
メソッドを実行します)でInvocationEvent
を構築します。InvocationEvent(Object source, Runnable runnable, Runnable listener, boolean catchThrowables)
指定されたソース(ディスパッチされたときにrunnableのrun
メソッドを実行します)でInvocationEvent
を構築します。
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 具象メソッド 修飾子と型 メソッド 説明 void
dispatch()
Runnableのrun()
メソッドを実行し、run()
が戻るか例外をスローしたときにnotifier (ある場合)を通知します。Exception
getException()
Runnableのrun()
メソッド実行時にキャッチされたExceptionを返します。Throwable
getThrowable()
Runnableのrun()
メソッド実行時にキャッチされたThrowableを返します。long
getWhen()
このイベントが発生した時点のタイムスタンプを返します。boolean
isDispatched()
イベントがディスパッチされるか、ディスパッチ中に例外がスローされた場合は、true
を返し、それ以外の場合はfalse
を返します。String
paramString()
このイベントを特定するパラメータ文字列を返します。-
クラス java.util.EventObjectで宣言されたメソッド
getSource
-
-
-
-
フィールドの詳細
-
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 volatile Object notifier
Runnable.run()メソッドの復帰後または例外のスロー後、あるいはイベントの破棄後、notifyAll()メソッドがただちに呼び出されるObjectです(nullの場合もあります)。- 関連項目:
isDispatched()
-
catchExceptions
protected boolean catchExceptions
dispatch()がThrowableをキャッチして例外インスタンス変数に格納する場合は、trueに設定します。 falseの場合は、ThrowableはEventDispatchThreadのディスパッチ・ループまで伝達されます。
-
-
コンストラクタの詳細
-
InvocationEvent
public InvocationEvent(Object source, Runnable runnable)
指定されたソース(ディスパッチされたときにrunnableのrun
メソッドを実行します)でInvocationEvent
を構築します。これは簡易コンストラクタです。
InvocationEvent(source, runnable)
という形式の呼び出しは、InvocationEvent(source, runnable, null, false)
の呼び出しとまったく同じように動作します。このメソッドは
source
がnull
の場合にIllegalArgumentException
をスローします。- パラメータ:
source
- イベントを発生させたObject
runnable
-run
メソッドが実行されるRunnable
- 例外:
IllegalArgumentException
-source
がnullである場合- 関連項目:
EventObject.getSource()
,InvocationEvent(Object, Runnable, Object, boolean)
-
InvocationEvent
public InvocationEvent(Object source, Runnable runnable, Object notifier, boolean catchThrowables)
指定されたソース(ディスパッチされたときにrunnableのrun
メソッドを実行します)でInvocationEvent
を構築します。 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
メソッドが呼び出されるObject
catchThrowables
-Runnable
のrun
メソッドの実行時に、dispatch
によりThrowableがキャッチされるか、これらのThrowableがEventDispatchThreadのディスパッチ・ループまで伝達されるかを指定する- 例外:
IllegalArgumentException
-source
がnullである場合- 関連項目:
EventObject.getSource()
,InvocationEvent(Object, int, Runnable, Object, boolean)
-
InvocationEvent
public InvocationEvent(Object source, Runnable runnable, Runnable listener, boolean catchThrowables)
指定されたソース(ディスパッチされたときにrunnableのrun
メソッドを実行します)でInvocationEvent
を構築します。 listenerがnull
でない場合は、run
の復帰後または例外のスロー後、あるいはイベントの破棄後、ただちにそこでlistener.run()
が呼び出されます。このメソッドは
source
がnull
の場合にIllegalArgumentException
をスローします。- パラメータ:
source
- イベントを発生させたObject
runnable
-run
メソッドが実行されるRunnable
listener
-InvocationEvent
のディスパッチ後または破棄後にrun()
メソッドが呼び出されるRunnable
catchThrowables
-Runnable
のrun
メソッドの実行時に、dispatch
によりThrowableがキャッチされるか、これらのThrowableがEventDispatchThreadのディスパッチ・ループまで伝達されるかを指定する- 例外:
IllegalArgumentException
-source
がnullである場合
-
InvocationEvent
protected InvocationEvent(Object source, int id, Runnable runnable, Object notifier, boolean catchThrowables)
指定されたソースとID (ディスパッチされたときにrunnableのrun
メソッドを実行します)でInvocationEvent
を構築します。 notifierがnull
でない場合は、run
が戻ったあとまたは例外のスロー後、ただちにそこでnotifyAll
が呼び出されます。このメソッドは
source
がnull
の場合にIllegalArgumentException
をスローします。- パラメータ:
source
- イベントを発生させたObject
id
- イベントのタイプを示す整数。 許容される値については、InvocationEvent
のクラスの説明を参照してください。runnable
-run
メソッドが実行されるRunnable
notifier
-Runnable.run
の復帰後または例外のスロー後、あるいはイベントの破棄後にnotifyAll
メソッドが呼び出されるObject
catchThrowables
-Runnable
のrun
メソッドの実行時に、dispatch
によりThrowableがキャッチされるか、これらのThrowableがEventDispatchThreadのディスパッチ・ループまで伝達されるかを指定する- 例外:
IllegalArgumentException
-source
がnullである場合- 関連項目:
EventObject.getSource()
,AWTEvent.getID()
-
-
メソッドの詳細
-
dispatch
public void dispatch()
Runnableのrun()
メソッドを実行し、run()
が戻るか例外をスローしたときにnotifier (ある場合)を通知します。- 定義:
dispatch
、インタフェース:ActiveEvent
- 関連項目:
isDispatched()
-
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
-
isDispatched
public boolean isDispatched()
イベントがディスパッチされるか、ディスパッチ中に例外がスローされた場合は、true
を返し、それ以外の場合はfalse
を返します。 このメソッドは、notifier.wait()
メソッドを呼び出す待機中スレッドによって呼び出すようにしてください。 見せかけの復帰が可能なため(Object.wait()
で説明)、イベントを確実にディスパッチするには、このメソッドを待機中ループで使用するようにしてください。while (!event.isDispatched()) { notifier.wait(); }
イベントをディスパッチせずに待機中スレッドが復帰すると、isDispatched()
メソッドによってfalse
が返され、while
ループが再度実行されるため、復帰したスレッドが待機モードに戻ります。待機中スレッドが
notifier.wait()
メソッドに入る前にnotifier.notifyAll()
が発生すると、while
ループによって待機中スレッドがnotifier.wait()
メソッドに確実に入らなくなります。 それ以外の場合、待機中スレッドは待機状態から復帰しません。- 戻り値:
- イベントがディスパッチされるか、ディスパッチ中に例外がスローされた場合は、
true
、それ以外の場合はfalse
- 導入されたバージョン:
- 1.7
- 関連項目:
dispatch()
,notifier
,catchExceptions
-
paramString
public String paramString()
このイベントを特定するパラメータ文字列を返します。 このメソッドは、イベント・ログの作成およびデバッグに便利です。- オーバーライド:
paramString
、クラス:AWTEvent
- 戻り値:
- イベントを特定する文字列とその属性
-
-