JavaTM 2 Platform
Std. Ed. v1.3

javax.swing
クラス Timer

java.lang.Object
  |
  +--javax.swing.Timer
すべての実装インタフェース:
Serializable

public class Timer
extends Object
implements Serializable

定義済みの頻度でアクションを発生させます。たとえばアニメーションオブジェクトでは、Timer をその次のフレームを描画するためのトリガーとして使うことができます。タイマーの詳細と使用例については、「The Java Tutorial」「How to Use Timers」を参照してください。

Timer はそれぞれ、ActionListener のリストと遅延 (各 actionPerformed() 呼び出しの間隔) を持ちます。遅延時間 (ミリ秒単位) が経過すると、Timer は actionPerformed() メッセージをそのリスナーに送ります。このサイクルは stop() が呼び出されるまで繰り返します。ただし、Timer がそのメッセージを 1 回だけ送るように設定されている場合には、ただちに停止します。

Timer を使うと、最初にそれを生成し、次に start() メソッドで起動するという作業を伴います。

警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。今後の Swing リリースでは、長期間の持続性をサポートする予定です。

関連項目:
直列化された形式

フィールドの概要
protected  EventListenerList listenerList
           
 
コンストラクタの概要
Timer(int delay, ActionListener listener)
          そのリスナーに delay ミリ秒ごとに通知する Timer を作成します。
 
メソッドの概要
 void addActionListener(ActionListener listener)
          actionListener を Timer に追加します。
protected  void fireActionPerformed(ActionEvent e)
          このイベントタイプの通知を受けるように登録されたすべてのリスナーに通知します。
 int getDelay()
          Timer の遅延を返します。
 int getInitialDelay()
          Timer の初期遅延を返します。
 EventListener[] getListeners(Class listenerType)
          このタイマーに追加された、指定されたタイプのリスナーすべての配列を返します。
static boolean getLogTimers()
          ログが有効な場合に true を返します。
 boolean isCoalesce()
          Timer が保留中の複数の performCommand() メッセージを合体する場合に true を返します。
 boolean isRepeats()
          Timer が actionPerformed() メッセージをそのリスナーに複数回送る場合に true を返します。
 boolean isRunning()
          Timer が実行中の場合に true を返します。
 void removeActionListener(ActionListener listener)
          ActionListener を Timer から削除します。
 void restart()
          Timer を再起動し、保留中のトリガーがあれば取り消し、その初期遅延で発生させます。
 void setCoalesce(boolean flag)
          Timer が保留中の複数の ActionEvent トリガーを合体させるかどうかを設定します。
 void setDelay(int delay)
          Timer の遅延、つまりそのリスナーへの各 actionPerfomed() メッセージの間隔をミリ秒単位の時間で設定します。
 void setInitialDelay(int initialDelay)
          Timer の初期遅延を設定します。
static void setLogTimers(boolean flag)
          タイマーのログを有効または無効にします。
 void setRepeats(boolean flag)
          flagfalse の場合、Timer に actionPerformed() をそのリスナーに 1 回だけ送ってから停止するように指示します。
 void start()
          Timer を起動し、actionPerformed() メッセージをそのリスナーに送らせます。
 void stop()
          Timer を停止し、actionPerformed() メッセージをその Target に送るのを止めさせます。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

listenerList

protected EventListenerList listenerList
コンストラクタの詳細

Timer

public Timer(int delay,
             ActionListener listener)
そのリスナーに delay ミリ秒ごとに通知する Timer を作成します。
パラメータ:
delay - リスナー通知の間隔 (ミリ秒単位の時間)
listener - 初期リスナー
関連項目:
setInitialDelay(int), setRepeats(boolean)
メソッドの詳細

addActionListener

public void addActionListener(ActionListener listener)
actionListener を Timer に追加します。

removeActionListener

public void removeActionListener(ActionListener listener)
ActionListener を Timer から削除します。

fireActionPerformed

protected void fireActionPerformed(ActionEvent e)
このイベントタイプの通知を受けるように登録されたすべてのリスナーに通知します。イベントのインスタンスは、このトリガーメソッドに渡されたパラメータを使用して遅れて作成されます。
関連項目:
EventListenerList

getListeners

public EventListener[] getListeners(Class listenerType)
このタイマーに追加された、指定されたタイプのリスナーすべての配列を返します。
戻り値:
このタイマーから listenerType 通知を受け取ったすべてのオブジェクト
導入されたバージョン:
1.3

setLogTimers

public static void setLogTimers(boolean flag)
タイマーのログを有効または無効にします。有効にすると、タイマーが切れたときに System.out にメッセージが送られます。
パラメータ:
flag - ログを有効にする場合は true
関連項目:
getLogTimers()

getLogTimers

public static boolean getLogTimers()
ログが有効な場合に true を返します。
戻り値:
ログが有効な場合は true
関連項目:
setLogTimers(boolean)

setDelay

public void setDelay(int delay)
Timer の遅延、つまりそのリスナーへの各 actionPerfomed() メッセージの間隔をミリ秒単位の時間で設定します。
関連項目:
setInitialDelay(int)

getDelay

public int getDelay()
Timer の遅延を返します。
関連項目:
setDelay(int)

setInitialDelay

public void setInitialDelay(int initialDelay)
Timer の初期遅延を設定します。これは、Timer の最初の「呼び出し」だけに使われます。それ以降の呼び出しについては、遅延プロパティを使って呼び出し間隔が置かれます。
関連項目:
setDelay(int)

getInitialDelay

public int getInitialDelay()
Timer の初期遅延を返します。
関連項目:
setDelay(int)

setRepeats

public void setRepeats(boolean flag)
flagfalse の場合、Timer に actionPerformed() をそのリスナーに 1 回だけ送ってから停止するように指示します。

isRepeats

public boolean isRepeats()
Timer が actionPerformed() メッセージをそのリスナーに複数回送る場合に true を返します。
関連項目:
setRepeats(boolean)

setCoalesce

public void setCoalesce(boolean flag)
Timer が保留中の複数の ActionEvent トリガーを合体させるかどうかを設定します。ビジーアプリケーションは Timer のメッセージ生成に追いつけない場合があって、結果として複数の actionPerformed() メッセージがキューに入ります。処理が行われると、アプリケーションはこうしたメッセージを次々と送るので、Timer のリスナーは遅延なく一連の actionPerformed() メッセージを受け取ります。保留中の複数メッセージを 1 つのメッセージ送信に合体すればこの状況を避けられます。Timer は、そうしたメッセージ送信をデフォルトで 1 つに合体します。

isCoalesce

public boolean isCoalesce()
Timer が保留中の複数の performCommand() メッセージを合体する場合に true を返します。
関連項目:
setCoalesce(boolean)

start

public void start()
Timer を起動し、actionPerformed() メッセージをそのリスナーに送らせます。
関連項目:
stop()

isRunning

public boolean isRunning()
Timer が実行中の場合に true を返します。
関連項目:
start()

stop

public void stop()
Timer を停止し、actionPerformed() メッセージをその Target に送るのを止めさせます。
関連項目:
start()

restart

public void restart()
Timer を再起動し、保留中のトリガーがあれば取り消し、その初期遅延で発生させます。

JavaTM 2 Platform
Std. Ed. v1.3

バグや機能要求の報告
さらに詳しい API リファレンスおよび開発者ドキュメントについては、 Java 2 SDK SE Developer Documentation を参照してください。このドキュメントには、概念、用語の定義、回避策、 実用的なコード例など、開発者を対象にした詳細な解説が掲載されています。

Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.