イメージの利用とイベント処理 (4/6)
作成:2009-12-30 09:59
更新:2009-12-30 09:59
更新:2009-12-30 09:59
■イベント処理の流れをチェック!
では、イベント処理部分を見てみましょう。ここでは、以下のような形で処理の分岐をしていますね。
switch (type) {
case Display.KEY_PRESSED_EVENT:
switch (param) {
case Display.KEY_UP:
……↑キーの処理……
break;
case Display.KEY_DOWN:
……↓キーの処理……
break;
……各キーごとにcaseを用意する……
}
}
押されたキーを示す値は、「Display」というクラスにフィールドとして用意されています。例えば↑キーならKEY_UPという具合です。こうして、それぞれのキーごとにcaseを用意し、必要な処理を行います。そして最後に、「repaint」メソッドを呼び出します。これにより全体の表示が更新されます。
switch (type) {
case Display.KEY_PRESSED_EVENT:
switch (param) {
case Display.KEY_UP:
……↑キーの処理……
break;
case Display.KEY_DOWN:
……↓キーの処理……
break;
……各キーごとにcaseを用意する……
}
}
押されたキーを示す値は、「Display」というクラスにフィールドとして用意されています。例えば↑キーならKEY_UPという具合です。こうして、それぞれのキーごとにcaseを用意し、必要な処理を行います。そして最後に、「repaint」メソッドを呼び出します。これにより全体の表示が更新されます。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
public void processEvent(int type, int param) { super.processEvent(type, param); switch (type) { case Display.KEY_PRESSED_EVENT: switch (param) { case Display.KEY_UP: y -= y == 0 ? 0 : 1; break; case Display.KEY_DOWN: y += y == MAX_Y - 1 ? 0 : 1; break; case Display.KEY_LEFT: x -= x == 0 ? 0 : 1; break; case Display.KEY_RIGHT: x += x == MAX_X - 1 ? 0 : 1; break; case Display.KEY_SELECT: flg[x][y] = !flg[x][y]; break; case Display.KEY_SOFT2: IApplication.getCurrentApp().terminate(); break; } repaint(); } }
※関連コンテンツ