コンポーネントイベントの管理

関連項目

Java プログラミング言語では、イベントを使用して、GUI フォームが動作できるようにします。ソースオブジェクトはイベントを発動することができ、それに対して、イベントリスナーを持つオブジェクトがイベントハンドラを使用して応答します。

イベントハンドラの定義

イベントハンドラは、コンポーネントのプロパティーシートまたはコンテキストメニューを使用して定義できます。接続ウィザードを使用してイベントハンドラを定義することもできます。

プロパティーシートを使用してイベントハンドラを定義する

  1. 「インスペクタ」ウィンドウでコンポーネントを選択する。
  2. 「プロパティー」ウィンドウの上部にある「イベント」ボタンをクリックします。
  3. リストの中でハンドラを定義するイベントの値をクリックします。どのイベントも、初期値は 「<なし>」です。値のフィールドをクリックすると、「<なし>」 が自動的にデフォルトイベント名に置き換わります。
  4. 省略符号 (...) ボタンをクリックして「ハンドラ」ダイアログを開きます。
  5. 「追加」ボタンをクリックし、ハンドラのリストに新しい名前を追加することにより、イベントハンドラの名前を入力します。「了解」をクリックします。

    リスナーのコードとハンドラメソッドの空の本体が生成されます。

コンテキストメニューを使用してイベントハンドラを定義する

  1. 「ファイル」ウィンドウ、「プロジェクト」ウィンドウ、または「インスペクタ」ウィンドウでフォームコンポーネントを右クリックします。
  2. コンテキストメニューとそのサブメニューから「イベント」を選択します。「イベント」サブメニューの中の太字のメニュー項目は、定義済みのイベントハンドラを示しています。

    リスナーのコードとハンドラメソッドの空の本体が生成されます。デフォルト名がイベントハンドラに割り当てられます。

  3. ソースエディタで新規イベントハンドラのコードを追加します。

1 つのイベントに対する複数ハンドラの追加

  1. 「インスペクタ」ウィンドウで、複数のハンドラを追加するコンポーネントを選択します。
  2. 「プロパティー」ウィンドウの上部にある「イベント」ボタンをクリックします。
  3. プロパティーシートでイベントを選択し、省略符号ボタン (...) をクリックして「ハンドラ」ダイアログを表示します。上記の手順を繰り返して、ほかのイベントハンドラを追加します。

イベントハンドラの削除

  1. 「インスペクタ」ウィンドウで、削除するイベントハンドラがあるコンポーネントを選択します。
  2. 「プロパティー」ウィンドウの上部にある「イベント」ボタンをクリックします。
  3. プロパティーシートでイベントを選択し、省略符号ボタン (...) をクリックして「ハンドラ」ダイアログを表示します。または、削除するハンドラの名前を「プロパティー」ウィンドウで削除できます。
  4. 「ハンドラ」ダイアログでは、削除するハンドラをリストから選択し、「削除」をクリックします。

イベントハンドラを削除すると、対応するコードブロックも削除されます。複数のハンドラが同じ名前と同じコードブロックを使用している場合、そのコードに対する単一の参照を削除してもコード自体は削除されません。すべての参照を削除した場合にだけ、対応するコードブロックが削除され、最初に確認ダイアログが表示されます。

Java イベントモデルを含む、プログラムにおけるイベントの処理方法については、次の場所にある『Creating a GUI with JFC/Swing』チュートリアルを参照してください。

関連項目
接続ウィザードによるイベントの設定
コンポーネントのプロパティーの編集
GUI ソースコードの変更

著作権と商標について