welcome: please sign in
location: "イベントドリブン"の差分
2と10のリビジョン間の差分 (その間の編集: 8回)
2009-12-04 01:15:39時点のリビジョン2
サイズ: 73
編集者: masahiko
コメント:
2009-12-04 01:50:07時点のリビジョン10
サイズ: 1662
編集者: masahiko
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 3: 行 3:
GUI用いたプログラムは複数のスレッドで動作しています。

ボタンを押すなどのアクションやイベントに対して処理が行われます。
行 4: 行 8:

イベントが発生するとその情報はイベントキューに入れられ、
イベントの内容に対応するイベントリスナに処理を委ねられます。
----
=== インターフェース ===

リスナを作成するにはインターフェースを利用します。

 . インターフェースは実体の無いクラスと考えられます。
 . インターフェースはクラス図では点線を使って表します。
 . {{attachment:interface.png}}

インターフェースでは、どのようなメソッドが必要かなどインターフェースだけが指定されています。

インターフェースを継承してクラスを作成するときには、
インターフェースで指定されているメソッドをすべて記述しなければなりません。
これを'''実装'''といいます。
----
=== 例 ===
画像を表示するプログラムにマウスイベントを追加します。

作成するクラスはJPanelとmouseListenerの2つの親を持たなければなりません。

 . {{attachment:event2.png}}
 . Javaではスーパークラスとして指定できるのは1つだけです。
 . JPanelクラスを継承します。
   . extends JPanel
 . インターフェースはスーパークラスとしての指定ではなく実装の指定をします。
   . implements mouseListener

イベントドリブン

GUI用いたプログラムは複数のスレッドで動作しています。

ボタンを押すなどのアクションやイベントに対して処理が行われます。

  • event1.png

イベントが発生するとその情報はイベントキューに入れられ、 イベントの内容に対応するイベントリスナに処理を委ねられます。


インターフェース

リスナを作成するにはインターフェースを利用します。

  • インターフェースは実体の無いクラスと考えられます。
  • インターフェースはクラス図では点線を使って表します。
  • interface.png

インターフェースでは、どのようなメソッドが必要かなどインターフェースだけが指定されています。

インターフェースを継承してクラスを作成するときには、 インターフェースで指定されているメソッドをすべて記述しなければなりません。 これを実装といいます。


画像を表示するプログラムにマウスイベントを追加します。

作成するクラスはJPanelとmouseListenerの2つの親を持たなければなりません。

  • event2.png

  • Javaではスーパークラスとして指定できるのは1つだけです。
  • JPanelクラスを継承します。
    • extends JPanel
  • インターフェースはスーパークラスとしての指定ではなく実装の指定をします。
    • implements mouseListener

イベントドリブン (最終更新日時 2010-12-18 12:54:39 更新者 masahiko)