キーボードの読み取りを行なう Java Sample Source
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class KeyEventTest extends JFrame
implements KeyListener{
JLabel text = new JLabel("Test");
public static void main(String ar[]){
JFrame f = new KeyEventTest();
/* 終了処理を追加 */
f.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){System.exit(0);}
});
}
KeyEventTest(){ //コンストラクタ
setTitle("KeyEvent");
JPanel p = new JPanel(); //パネルを用意し、
p.add(text); //文字表示用ラベルを乗せ、
this.add(p); //パネル自身をフレームに乗せる。
setSize(100,80);
setVisible(true);
addKeyListener(this); //Keyが押されたときの処理は、このクラス内に記述する。
}
public void keyPressed(KeyEvent ev){ //Keyが押されたときに実行されるメソッド
int key = ev.getKeyCode();
switch (key) {
case KeyEvent.VK_LEFT: //左カーソルキー
text.setText("left"); //ラベルの内容を変更
System.out.println("left"); //コマンドプロンプトにも文字を表示
break;
case KeyEvent.VK_RIGHT:
System.out.println("Right");
text.setText("Right");
break;
case KeyEvent.VK_UP:
System.out.println("Up");
text.setText("Up");
break;
case KeyEvent.VK_DOWN:
System.out.println("Down");
break;
}
}
public void keyReleased(KeyEvent ev){ //キーが離されたときに実行されるメソッド
int key = ev.getKeyCode();
switch (key) {
case KeyEvent.VK_LEFT:
System.out.println("Left released");
text.setText("Left released");
break;
case KeyEvent.VK_RIGHT:
System.out.println("Right released");
text.setText("Right released");
break;
case KeyEvent.VK_UP:
System.out.println("Up released");
text.setText("Up released");
break;
case KeyEvent.VK_DOWN:
System.out.println("Down released");
text.setText("Down released");
}
}
public void keyTyped(KeyEvent keyEvent){
}
}
▼研究演習ホームに戻る
▼小松原研究室公開ページ
▼経営学科詳細紹介ページ
|
|