イベント処理と Listener

新しいイベントモデルの中心になる Listenerインターフェイスについて 具体例で解説します。
Listener のインターフェイス群は、イベントの情報を受け取ることを可能にする 機能を提供します。 すべての Listener は java.util パッケージに含まれる EventListener を共通のスーパークラスに持ちます。 実際のプログラムの中で用いられる Listener は java.awt.event パッケージに 含まれ、以下のものがあります。

java.awt.event の Listener インターフェイスとその意味
インターフェイス名 働き 受け取るイベントのクラス 実装すべきメソッド名
MouseListener マウスの出入りやクリックのイベントを受け取る MouseEvent mouseClicked()
mouseEntered()
mouseExited()
mousePressed()
mouseReleased()
MouseMotionListener マウスの移動、ドラッグのイベントを受け取る MouseEvent mouseMoved()
mouseDragged()
KeyListener キー入力のイベントを受け取る KeyEvent keyPressed()
keyReleased()
keyTyped()
FocusListener キーボードフォーカスの移動のイベントを受け取る FocusEvent focusGained()
focusLost()
AdjustmentListener スクロールバーなどの操作のイベントを受け取る AdjustmentEvent adjustmentValueChanged
WindowListener ウィンドウの表示、クローズ、消去のイベントを受け取る WindowEvent windowClosed()
windowClosing()
windowDeiconified()
windowIconified()
windowOpened()
ComponentListener コンポーネントの表示やレイアウト変更のイベントを受け取る ComponentEvent componentHidden()
componentShown()
componentMoved()
componentResized()
ActionListener Buttonのクリックなどのアクションを受け取る ActionEvent actionPerformed
ItemListener Checkbox などの状態の変更のアクションを受け取る ItemEvent itemStateChanged

Listener を組み込んだ簡単なサンプルプログラムを紹介します。

  1. Buttonのアクションを受け取るアプレット
  2. Checkboxのアクションを受け取るコンポーネント
  3. マウスのドラッグ・イベントとCheckboxのアクションを受け取るアプレット