Java/Excercise

swing ch05 EventListenerEx8

낭구리 2021. 9. 7. 17:44
package ch05;

import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

import javax.swing.JFrame;
import javax.swing.JTextArea;

class MyFrame8 extends JFrame implements KeyListener {

	// 1. keyAdapter 내부클래스로 정의해서 만들어주세요

	private JTextArea area;

	public MyFrame8() {
		initData();
		setInitLayout();
		addEventListener();
	}

	private void initData() {
		setTitle("키어댑터");
		setSize(500, 500);
		setDefaultCloseOperation(EXIT_ON_CLOSE);
		area = new JTextArea();
//		myEvent = ~
	}

	private void setInitLayout() {
		setVisible(true);
		add(area);
	}

	private void addEventListener() {
		area.addKeyListener(new MyKeyListener());
		
		
	}

	private void display(KeyEvent e) {
		int KeyCode = e.getKeyCode();
		area.append("KeyCode :" + KeyCode + "/n");

		// 38 방향키 위
		// 40 방향키 아래
		// static 변수
		 int temp = KeyEvent.VK_UP;
		 if(KeyCode == KeyEvent.VK_UP) {
			 System.out.println("방향키 위로 눌러졌습니다.");
		 }else if (KeyCode == KeyEvent.VK_DOWN) {
			 System.out.println("방향키 아래로 눌러졌습니다");
		 }else if(KeyCode == KeyEvent.VK_LEFT) {
			 System.out.println("방향키가 왼쪽으로 눌러졌습니다");
		 } else {
			 System.out.println("방향키가 오른쪽으로 눌러졌습니다.");
		 }
	}

	// 내부클래스
	private class MyKeyListener extends KeyAdapter {

		@Override
		public void keyPressed(KeyEvent e) {
			display(e);
		}

	}

	@Override
	public void keyTyped(KeyEvent e) {
	}

	@Override
	public void keyPressed(KeyEvent e) {
	}

	@Override
	public void keyReleased(KeyEvent e) {
	}
}

public class EventListenerEx8 {

	public static void main(String[] args) {

		new MyFrame8();

	}

}

'Java > Excercise' 카테고리의 다른 글

thread ch01 ThreadTest1  (0) 2021.09.07
swing ch05 EventListenerEx9  (0) 2021.09.07
swing ch05 EventListenerEx7  (0) 2021.09.07
swing ch05 EventListenerEx6  (0) 2021.09.07
swing ch05 EventListenerEx5  (0) 2021.09.06