728x90
package swing.listener;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class AnonymousClassListener extends JFrame {
AnonymousClassListener() {
setTitle("Action Event Listener");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new FlowLayout());
JButton btn = new JButton("Action");
// 익명의 클래스로 이벤트 리스너를 작성한다.
btn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JButton btn = (JButton)e.getSource();
if(btn.getText().equals("Action")) {
btn.setText("액션");
} else {
btn.setText("Action");
}
}
});
add(btn);
setSize(300, 160);
setVisible(true);
}
public static void main(String[] args) {
new AnonymousClassListener();
}
}
package swing.listener;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class InnerClassListener extends JFrame{
InnerClassListener() {
setTitle("Action Event Listener");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new FlowLayout());
JButton btn = new JButton("Action");
// 이벤트 리스너를 등록한다.
MyActionListener listener = new MyActionListener(); // Mouse Event Listener 객체를 생성한다.
btn.addActionListener(listener); // Mouse Event Listener 등록
add(btn);
setSize(300, 160);
setVisible(true);
}
//private으로 선언하여 InnerClassListener의 외부에서는 사용할 수 없게 하였다.
private class MyActionListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
JButton btn = (JButton)e.getSource();
if(btn.getText().equals("Action")) {
btn.setText("액션");
} else {
btn.setText("Action");
}
}
}
public static void main(String[] args) {
new InnerClassListener();
}
}
package swing.listener;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class ListenerExam extends JFrame{
ListenerExam() {
setTitle("Action Event Listener");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new FlowLayout());
JButton btn = new JButton("Action");
// 이벤트 리스너를 등록한다.
MyActionListener listener = new MyActionListener(); // Mouse Event Listener 객체를 생성한다.
btn.addActionListener(listener); // Mouse Event Listener 등록
add(btn);
setSize(300, 160);
setVisible(true);
}
public static void main(String[] args) {
new ListenerExam();
}
}
class MyActionListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
JButton btn = (JButton)e.getSource();
if(btn.getText().equals("Action")) {
btn.setText("액션");
} else {
btn.setText("Action");
}
}
}
'Language > Java' 카테고리의 다른 글
[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 |
[Java] 실습 (frame) (0) | 2022.08.16 |