Panelを極めよう! (8/8)
作成:2009-12-29 19:18
更新:2009-12-29 19:18
更新:2009-12-29 19:18
■数字キーを押して数字を入力する
では、実際に簡単なサンプルを作ってみましょう。数字キーを押して直接画面に数字を表示させていくものです。
ここでは、keyPressedで引数のキーの値をswitchで分岐処理しています。この部分を見ると、こんな具合にcaseが並んでいますね。
switch(key){
case Display.KEY_0:
msg += "0";
break;
case Display.KEY_1:
msg += "1";
break;
case Display.KEY_2:
……以下略……
caseで、Display.KEY_0を指定して「押されたキーがゼロかどうか」をチェックしています。KEY_1では「1かどうか」、KEY_2では「2かどうか」……という具合に、1つ1つのキーについて順にチェックしながら処理を用意していくのです。キーの値は、こんな具合にDisplayクラスに用意されています。数字キー以外のものも用意されているので、一度Displayクラスについて調べてみるといいでしょう。
ここでは、keyPressedで引数のキーの値をswitchで分岐処理しています。この部分を見ると、こんな具合にcaseが並んでいますね。
switch(key){
case Display.KEY_0:
msg += "0";
break;
case Display.KEY_1:
msg += "1";
break;
case Display.KEY_2:
……以下略……
caseで、Display.KEY_0を指定して「押されたキーがゼロかどうか」をチェックしています。KEY_1では「1かどうか」、KEY_2では「2かどうか」……という具合に、1つ1つのキーについて順にチェックしながら処理を用意していくのです。キーの値は、こんな具合にDisplayクラスに用意されています。数字キー以外のものも用意されているので、一度Displayクラスについて調べてみるといいでしょう。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
※MainPanelの修正
class MainPanel extends Panel implements KeyListener {
private Label label;
private ListBox list;
private String msg = "";
MainPanel() {
setTitle("Start IApplication");
label = new Label("Button Sample");
this.add(label);
this.setKeyListener(this);
}
public void keyPressed(Panel panel, int key) {
switch(key){
case Display.KEY_0:
msg += "0";
break;
case Display.KEY_1:
msg += "1";
break;
case Display.KEY_2:
msg += "2";
break;
case Display.KEY_3:
msg += "3";
break;
case Display.KEY_4:
msg += "4";
break;
case Display.KEY_5:
msg += "5";
break;
case Display.KEY_6:
msg += "6";
break;
case Display.KEY_7:
msg += "7";
break;
case Display.KEY_8:
msg += "8";
break;
case Display.KEY_9:
msg += "9";
break;
}
label.setText(msg);
}
public void keyReleased(Panel panel, int key) {}
}
※関連コンテンツ