JavaプログラミングU

12回目 アプレット 課題

確認○×問題

  1. アプレットはWebブラウザ上で動作するJavaプログラムである
  2. 一般にアプレットはアプリケーションがもつmain()メソッドを持たない
  3. アプレットのクラスを作成するにはクラスAppletを拡張すればよい
  4. アプレットの画面を描画するにはAppletクラスから継承されるstart()メソッドをオーバーライドする
  5. クラスGraphicsは線や円などを描画するメソッドをもつ
  6. マウスのイベント処理はMouseListenerインタフェースを実装して処理を記述する
  7. Appletクラスから継承されるinit()メソッドはアプレットの初期化のため最初に1回だけ実行される
  8. Appletクラスから継承されるstart()やstop()メソッドをオーバーライドするとアプレットの開始や停止などの動作に応じた処理が実現できる
■難易度★☆☆
課題1 次のようにマウスのカーソルに同期してメッセージを表示するアプレットを作成しなさい。

イベントメッセージ
マウスをクリックしたクリックされました
マウスがアプレット上に入ったアプレット上に入りました
マウスがアプレットから出たアプレットから出ました
マウスのボタンを押したボタンが押されました
マウスのボタンをはなしたボタンが離されました

完成例:

■難易度★★☆
課題2 星の画像がマウスカーソルを追従するアプレットを作成しなさい。星の図はここからダウンロードしてください。

ヒント:
MouseListenerの変わりにMouseMotionListenerを用いなさい(教書の503ページのコーヒーブレイクの欄を参照)。

完成例:

■難易度★★★
課題3 色の異なる複数の星の画像がマウスカーソルを追従するアプレットを作成しなさい。星の図は次から星(黄)星(赤)星(緑)からダウンロードしてください。

ヒント:
各星の座標を保持するために配列を用いなさい。マウスが動くたびに配列の値を1つ後方へシフトし、配列の先頭に現在のマウスカーソルの値をコピーすればよい。

完成例:

■難易度★★☆
課題4 マウスをクリックした場所にクロスヘア(照準マーク)を表示するアプレットを作成しなさい。

完成例:

■難易度★★★
課題5 2つのボタンを配置し、ボタンが押されたらそのボタンのラベルを●に、他方のラベルを○にするアプレットを作成しなさい。

ヒント:
ButtonクラスのsetActionCommand()メソッド、ActionEventクラスのgetActionCommand()メソッドの機能をWebで調べて、うまく活用してみよう。

完成例:

■難易度★★★
課題6 血液型が選択できるチョイスを配置し、選択されたらその血液型を表示するアプレットを作成しなさい。

ヒント:
ChoiceクラスのメンバをWebで調べて、うまく活用してみよう。

完成例: