[java] 자바 스윙 컴포넌트에서 마우스 클릭 이벤트를 처리하는 방법은 어떻게 되나요?

먼저, MouseListener를 구현한 클래스를 만들고, mouseClicked 메서드를 오버라이드하여 클릭 이벤트를 처리합니다.

import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class MyMouseListener implements MouseListener {

    @Override
    public void mouseClicked(MouseEvent e) {
        // 마우스 클릭 이벤트 처리 로직을 작성합니다.
        System.out.println("마우스가 클릭되었습니다.");
    }

    // 다른 MouseListener 메서드들도 오버라이드할 수 있습니다.

    public static void main(String[] args) {
        JFrame frame = new JFrame("마우스 이벤트 예제");
        JPanel panel = new JPanel();

        MyMouseListener listener = new MyMouseListener();
        panel.addMouseListener(listener);

        frame.add(panel);
        frame.setSize(300, 300);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);
    }
}

이 예제 코드는 JFrame과 JPanel을 사용하여 윈도우를 생성하고, JPanel에 MouseListener를 추가하여 마우스 클릭 이벤트를 처리합니다. 위의 코드를 실행하면, 패널을 클릭할 때마다 “마우스가 클릭되었습니다.”라는 메시지가 터미널에 출력됩니다.

마우스 클릭 이벤트 외에도 MouseListener는 마우스 이벤트에 대한 다양한 메서드를 제공하므로, 해당 메서드를 활용하여 필요한 동작을 구현할 수 있습니다.

이 방법을 사용하여 자바 스윙 컴포넌트에서 마우스 클릭 이벤트를 처리할 수 있습니다.