728x90
package swing.listener;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class KeyListenerExam extends JFrame {
JPanel contentPane = new JPanel();
JLabel[] keyMessage;
KeyListenerExam() {
setTitle("KeyListener Example");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setContentPane(contentPane);
contentPane.addKeyListener(new MyKeyListener());
keyMessage = new JLabel[3];
keyMessage[0] = new JLabel(" getKeyCode() ");
keyMessage[1] = new JLabel(" getKeyChar() ");
keyMessage[2] = new JLabel(" getKeyText() ");
for(int i = 0; i < keyMessage.length; i++) {
contentPane.add(keyMessage[i]);
keyMessage[i].setOpaque(true); // Opaque의 값을 미리 true로 설정해 주어야 배경색이 적용된다.
keyMessage[i].setBackground(Color.CYAN);
}
setSize(300, 150);
setVisible(true);
contentPane.requestFocus();
}
class MyKeyListener extends KeyAdapter {
public void keyPressed(KeyEvent e) {
int keyCode = e.getKeyCode();
char keyChar = e.getKeyChar();
keyMessage[0].setText(Integer.toString(keyCode));
keyMessage[1].setText(Character.toString(keyChar));
keyMessage[2].setText(e.getKeyText(keyCode));
}
}
public static void main(String[] args) {
new KeyListenerExam();
}
}

package swing.listener;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class ListenerMouseExam extends JFrame {
ListenerMouseExam() {
setTitle("버튼에 마우스 이벤트 리스너를 작성해보자.");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new FlowLayout());
JButton btn = new JButton("Mouse Event Example Button");
btn.setBackground(Color.YELLOW);
MyMouseListener listener = new MyMouseListener();
btn.addMouseListener(listener);
add(btn);
setSize(300, 200);
setVisible(true);
}
public static void main(String[] args) {
new ListenerMouseExam();
}
}
class MyMouseListener implements MouseListener {
public void mouseEntered(MouseEvent e) {
JButton btn = (JButton)e.getSource();
btn.setBackground(Color.RED);
}
public void mouseExited(MouseEvent e) {
JButton btn = (JButton)e.getSource();
btn.setBackground(Color.YELLOW);
}
public void mousePressed(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {}
public void mouseClicked(MouseEvent e) {}
}

package swing.listener;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class MouseListenerExam extends JFrame {
JLabel la;
MouseListenerExam() {
setTitle("Mouse Event 연습");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel contentPane = new JPanel();
setContentPane(contentPane);
setLayout(null);
contentPane.addMouseListener(new MyMouseListener());
la = new JLabel("Hello");
la.setSize(50, 20);
la.setLocation(20, 20);
contentPane.add(la);
setSize(800, 600);
setVisible(true);
}
class MyMouseListener extends MouseAdapter {
public void mousePressed(MouseEvent e) {
int x = e.getX(); // 마우스를 누른 곳의 좌표값을 가져온다.
int y = e.getY();
la.setLocation(x, y); // 라벨을 이동시킨다.
}
}
/*
class MyMouseListener implements MouseListener {
public void mousePressed(MouseEvent e) {
int x = e.getX(); // 마우스를 누른 곳의 좌표값을 가져온다.
int y = e.getY();
la.setLocation(x, y); // 라벨을 이동시킨다.
}
public void mouseReleased(MouseEvent e) {}
public void mouseClicked(MouseEvent e) {}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
}
*/
public static void main(String[] args) {
new MouseListenerExam();
}
}

'Language > Java' 카테고리의 다른 글
[Java] 제어자 (modifier) (0) | 2022.08.19 |
---|---|
[Java] 실습 (event) Click (0) | 2022.08.18 |
[Java] 실습 (event) (0) | 2022.08.18 |
[Java] 실습 (evevt) 리스너 (0) | 2022.08.18 |
[Java] 실습 (event) 상 하 좌 우키로 글자 움직이기 (0) | 2022.08.18 |