본문 바로가기
프로그래밍/자바

키 입력받기, 내부 클래스 이용

by LillyLt 2015. 7. 25.






import java.awt.Color;

import java.awt.Frame;

import java.awt.event.KeyAdapter;

import java.awt.event.KeyEvent;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;


/** <pre>

 * TODO

 * </pre>

 * 

 * @since 2015. 7. 15. 오전 9:10:10

 * @author Holy

 * @version */

public class 키입력 extends JFrame {

JPanel jp = new JPanel();

JLabel[] 출력라벨;

키입력() {

setTitle("df");

setDefaultCloseOperation(EXIT_ON_CLOSE);

setContentPane(jp);

jp.addKeyListener(new mkln());

출력라벨 = new JLabel[3];

출력라벨[0] = new JLabel("code");

출력라벨[1] = new JLabel("char");

출력라벨[2] = new JLabel("text");

for (int i = 0; i < 출력라벨.length; i++) {

jp.add(출력라벨[i]);

출력라벨[i].setOpaque(true);

출력라벨[i].setBackground(Color.CYAN);

}

setSize(300, 150);

setVisible(true);

jp.requestFocus();

}

//내부 클래스

class mkln extends KeyAdapter {

public void keyPressed(

KeyEvent e) {

System.out.println(e);

int kcd = e.getKeyCode();

char kch = e.getKeyChar();

출력라벨[0].setText(Integer.toString(kcd));

출력라벨[1].setText(Character.toString(kch));

출력라벨[2].setText(e.getKeyText(kcd));

System.out.println("keyPressed");

}

public void keyReleased(

KeyEvent e) {

System.out.println("keyReleased");

}

/* (non-Javadoc)

* @see java.awt.event.KeyAdapter#keyTyped(java.awt.event.KeyEvent) */

@Override

public void keyTyped(

KeyEvent e) {

// TODO Auto-generated method stub

System.out.println("keyTyped");

}

}

/** <pre>

* TODO

* </pre>

* @since 2015. 7. 15. 오전 9:10:10

* @author Holy

* @version

* @param args */

public static void main(

String[] args) {

// TODO Auto-generated method stub

new 키입력();

}

}