[[TopPage]] > [[演習課題]] > 演習2-2 イベント処理

* イベント処理 [#n1693285]

まず,下記のプログラムをダウンロードしてください.

&ref(GuiEventTest.java,,,GuiEventTest.java ダウンロード);/[[ソースコードファイルを見る>http://yoshino.sys.wakayama-u.ac.jp/netprog/source/GuiEventTest.java]]
&ref(GuiEventTest.java,,,GuiEventTest.java ダウンロード);/[[ソースコードファイルを見る>http://yoslab.net/netprog/source/GuiEventTest.java]]


*** 説明 [#r4b21dee]

このプログラムは,演習2-1のプログラムにイベント処理の機能を実装したものです.
(名前入力機能など一部を省略しています)


''イベント''とは,Javaプログラム上でマウスやキーボードを操作したことを指しており,イベントが発生すると,''イベントリスナー''(イベントハンドラ)と呼ばれるメソッドが,イベントに応じた処理を実行します.

- 26〜27行目:各ボタンに対して,マウスイベントのリスナーを設定している.
- 28行目:各ボタンに対して,ボタンの番号を格納している.


*** イベントハンドラ [#g8dddc72]

38〜44行目の,''mouseClicked''メソッドは,コンポーネントがクリックされた時に呼び出されるイベントハンドラです.

- 40行目は,クリックされたコンポーネントを取得しています.
- 41行目は,クリックされたコンポーネントから,ボタン番号を取り出しています.
- 42行目は,ボタン番号の前に*(アスタリスク)をつけて,クリックされたことを明示します.

このほか,61〜74行目では,ボタンをドラッグしている途中のイベントハンドラ,76〜81行目では,マウスが移動している途中のイベントハンドラなどがあります.


*** 練習 [#h7c4ef3b]

アスタリスクマーク(*)のついたボタンを再度クリックすると,アスタリスクが消えるようにプログラムを変更してください.

''ヒント:''&br;
'''JButton'''.''getText()''
を使うと,ボタンのテキストを取得できます.(String型の文字が取得できます)~
※ '''JButton'''(斜字)の部分には,JButton型の変数名を書いてください.

#br

&size(16){[[&ref(http://yoshino.sys.wakayama-u.ac.jp/netprog/next.gif,nolink); 次の演習(2-3)>演習2-3 画像アイコン]]};
&size(16){[[&ref(http://yoslab.net/netprog/next.gif,nolink); 次の演習(2-3)>演習2-3 画像アイコン]]};


トップ   一覧 単語検索 最終更新     最終更新のRSS