JavaTM 2
Platform
Std. Ed. v1.4.0

javax.swing
インタフェース Action

すべてのスーパーインタフェース:
ActionListener, EventListener
既知の実装クラスの一覧:
AbstractAction

public interface Action
extends ActionListener

Action インタフェースは、同じ機能が複数のコントロールによってアクセスされる場合に、ActionListener インタフェースに対する便利な拡張機能を提供します。

ActionListener インタフェースで定義される actionPerformed メソッドに加えてこのインタフェースを使用すると、アプリケーションでは次のことを 1 箇所で定義できます。

Action オブジェクトの追加方法の情報を持ち、メニューやツールバーを含む、特定のコンテナ。このコンテナに Action オブジェクトが追加されると、コンテナは次のことを実行します。
  1. そのコンテナに対する適切なコンポーネントの生成。たとえば、ツールバーがボタンコンポーネントを生成するなど
  2. コンポーネントをカスタマイズするのに適切なプロパティの Action オブジェクトからの取得。たとえば、アイコンのイメージ、およびボタン上にカーソルがあるときに表示されるテキスト
  3. Action オブジェクトの初期状態の確認、有効か無効かの決定、および適切な方法でのコンポーネントの描画
  4. Action オブジェクトとともにリスナーを登録して、状態の変化が通知されるようにする。Action オブジェクトが有効から無効に変化したり、戻ったりした場合に、コンテナはイベント生成機構に適切な変更を加え、それに合わせてコンポーネントを描画する
たとえば、メニュー項目およびツールバーボタンは、両方とも Cut アクションオブジェクトにアクセスできます。このオブジェクトに関連したテキストは「Cut」として指定され、はさみのイメージがオブジェクトのアイコンに指定されます。このようにして、Cut というアクションオブジェクトは、メニューおよびツールバーに追加されます。各コンテナはオブジェクトを適切に扱い、関連したコンポーネントがアクティブになると、actionPerformed メソッドを呼び出します。これでアプリケーションは、アプリケーションオブジェクトを有効あるいは無効にする際に、どのユーザインタフェースコンポーネントが接続されているかを気にせずに済みます。

このインタフェースは既存のクラスに追加したり、アダプタの生成 (通常は、AbstractAction のサブクラス化) に使用したりすることができます。そして、Action オブジェクトが複数のアクション処理コンテナに追加され、Action の機能を持ったコンポーネントに接続されます。これによって、Action オブジェクトの setEnabled メソッドを呼び出して、GUI コントロールを一度に起動または終了できます。

Action の実装は、記憶領域の点で通常の ActionListener より不可が大きくなることが多いので、機能の中央制御やプロパティ変更の通知といった利点を提供できません。このため、これらの機能を利用する必要がある場合にのみ Action を使用するようにして、それ以外では単純な ActionListener を使用するようにしてください。

関連項目:
AbstractAction

フィールドの概要
static String ACCELERATOR_KEY
          アクションのアクセラレータとして使用する KeyStroke の格納に使用するキーです。
static String ACTION_COMMAND_KEY
          JComponent に関連付けられた Keymap に常駐している結果として、Action が通知されるときに生成される ActionEvent のコマンド文字列の判定に使用するキーです。
static String DEFAULT
          オブジェクトのプロパティ (テキストまたはアイコン) を設定または取得するときに、記憶取得キーとして使うと便利な定数です。
static String LONG_DESCRIPTION
          アクションについての詳細な説明を格納するために使われるキーです。
static String MNEMONIC_KEY
          アクションのニーモニックとして使用する整数値キーコードの格納に使用するキーです。
static String NAME
          アクションの名前を格納するために使われるキーです。
static String SHORT_DESCRIPTION
          アクションについての短い説明を格納するために使われるキーです。
static String SMALL_ICON
          アクションに対応する小さいアイコンを格納するために使われるキーです。
 
メソッドの概要
 void addPropertyChangeListener(PropertyChangeListener listener)
          PropertyChange リスナーを追加します。
 Object getValue(String key)
          関連付けられているキーを使ってオブジェクトのプロパティの 1 つを返します。
 boolean isEnabled()
          Action の有効状態を調べます。
 void putValue(String key, Object value)
          関連付けられているキーを使って、オブジェクトのプロパティの 1 つを設定します。
 void removePropertyChangeListener(PropertyChangeListener listener)
          PropertyChange リスナーを削除します。
 void setEnabled(boolean b)
          Action の有効状態を設定します。
 
インタフェース java.awt.event.ActionListener から継承したメソッド
actionPerformed
 

フィールドの詳細

DEFAULT

public static final String DEFAULT
オブジェクトのプロパティ (テキストまたはアイコン) を設定または取得するときに、記憶取得キーとして使うと便利な定数です。

関連項目:
定数フィールド値

NAME

public static final String NAME
アクションの名前を格納するために使われるキーです。メニューまたはボタンで使われます。

関連項目:
定数フィールド値

SHORT_DESCRIPTION

public static final String SHORT_DESCRIPTION
アクションについての短い説明を格納するために使われるキーです。ツールヒントのテキストに使われます。

関連項目:
定数フィールド値

LONG_DESCRIPTION

public static final String LONG_DESCRIPTION
アクションについての詳細な説明を格納するために使われるキーです。コンテキスト依存ヘルプで使うことができます。

関連項目:
定数フィールド値

SMALL_ICON

public static final String SMALL_ICON
アクションに対応する小さいアイコンを格納するために使われるキーです。ツールバーのボタンに使われます。

関連項目:
定数フィールド値

ACTION_COMMAND_KEY

public static final String ACTION_COMMAND_KEY
JComponent に関連付けられた Keymap に常駐している結果として、Action が通知されるときに生成される ActionEvent のコマンド文字列の判定に使用するキーです。

関連項目:
定数フィールド値

ACCELERATOR_KEY

public static final String ACCELERATOR_KEY
アクションのアクセラレータとして使用する KeyStroke の格納に使用するキーです。

導入されたバージョン:
1.3
関連項目:
定数フィールド値

MNEMONIC_KEY

public static final String MNEMONIC_KEY
アクションのニーモニックとして使用する整数値キーコードの格納に使用するキーです。

導入されたバージョン:
1.3
関連項目:
定数フィールド値
メソッドの詳細

getValue

public Object getValue(String key)
関連付けられているキーを使ってオブジェクトのプロパティの 1 つを返します。

関連項目:
putValue(java.lang.String, java.lang.Object)

putValue

public void putValue(String key,
                     Object value)
関連付けられているキーを使って、オブジェクトのプロパティの 1 つを設定します。値が変更されると、PropertyChangeEvent がリスナーに送信されます。

パラメータ:
key - キーが格納されている String
value - Object

setEnabled

public void setEnabled(boolean b)
Action の有効状態を設定します。有効な場合、このオブジェクトに関連した任意のコンポーネントはアクティブであり、オブジェクトの actionPerformed メソッドをトリガできます。値が変更されると、PropertyChangeEvent がリスナーに送信されます。

パラメータ:
b - この Action を有効にする場合は true、無効にする場合は false

isEnabled

public boolean isEnabled()
Action の有効状態を調べます。有効な場合は、このオブジェクトに関連した任意のコンポーネントはアクティブであり、オブジェクトの actionPerformed メソッドをトリガできます。

戻り値:
この Action が有効な場合は true

addPropertyChangeListener

public void addPropertyChangeListener(PropertyChangeListener listener)
PropertyChange リスナーを追加します。コンテナ、および接続されたコンポーネントは、これらのメソッドを使用して Action オブジェクトの通知対象として登録します。Action オブジェクトが有効になった場合、またはその他のプロパティが変化した場合、登録されたリスナーに変更が通知されます。

パラメータ:
listener - PropertyChangeListener オブジェクト

removePropertyChangeListener

public void removePropertyChangeListener(PropertyChangeListener listener)
PropertyChange リスナーを削除します。

パラメータ:
listener - PropertyChangeListener オブジェクト
関連項目:
addPropertyChangeListener(java.beans.PropertyChangeListener)

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

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