package CHAPTER11;

import javax.swing.*;
import java.awt.event.FocusEvent;
import java.awt.event.FocusListener;

// FocusListener 인터페이스를 구현하여 모든 포커스 이벤트 처리
class MyFocusListener implements FocusListener {
    @Override
    public void focusGained(FocusEvent e) {
        System.out.println("텍스트 필드가 포커스를 얻었습니다.");
    }

    @Override
    public void focusLost(FocusEvent e) {
        System.out.println("텍스트 필드가 포커스를 잃었습니다.");
    }
}

public class SelfTest_FocusListener extends JFrame{
	public SelfTest_FocusListener() {
		setTitle("FocusListener Example");
		setSize(300, 200);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
        JTextField textField = new JTextField(20);

        // MyFocusListener 클래스의 객체를 이벤트 리스너로 등록
        textField.addFocusListener(new MyFocusListener());

        add(textField);
        setVisible(true);
    }  
    public static void main(String[] args) {
    	new SelfTest_FocusListener();
    }
}