Java의 다중 액션 리스너
Suraj P
2023년10월12일
이 기사에서는 Java에서 여러 액션 리스너를 만드는 방법을 알려줍니다.
Java에서 ActionListener
는 조치 이벤트를 처리하기 위한 클래스입니다. 따라서 Java는 사용자가 버튼을 클릭한 위치를 찾고 버튼을 클릭할 때마다 무언가를 인쇄하거나 무언가를 계산하는 것과 같은 작업을 수행하기 위해 일부 이벤트를 생성할 수 있는 인터페이스를 제공합니다.
따라서 여기서는 Java Swing 프로젝트에서 여러 버튼에 대한 여러 작업 리스너를 만드는 방법을 살펴보겠습니다.
먼저 액션 리스너를 작성하는 방법을 살펴보겠습니다.
Java에서 ActionListener
작성
Java에서 java.awt.event
패키지에는 actionPerformed()
만 포함하는 ActionListener
인터페이스가 포함되어 있습니다. 인터페이스이므로 ActionListener
를 작성하는 일반적인 방법은 ActionListener
인터페이스를 구현하는 것입니다.
ActionListener
를 구현할 때 다음 단계를 따라야 합니다.
-
우리 클래스는
ActionListener
인터페이스를 구현해야 합니다.public class test implements ActionListener
-
리스너에 버튼과 같은 구성 요소를 추가합니다.
Button b = new Button("Click Here"); b.addActionListener(this);
-
마지막 단계는 유일한 인터페이스 메서드, 즉
actionPerformed()
메서드를 재정의하는 것입니다.
예제 코드:
import java.awt.*;
import java.awt.event.*;
public class test implements ActionListener // 1st step
{
public test() // constructor
{
Button b = new Button("Click Here");
// 2nd step
b.addActionListener(this);
// our code.....
}
// 3rd step
public void actionPerformed(ActionEvent evt) {
// our code
}
public static void main(String args[]) {
Test t = new Test();
}
}
때로는 익명 클래스를 사용하여 ActionListener
를 구현하기도 합니다. 쉽고 간결하게 작성하는 방법이므로 가장 선호하는 방법입니다.
Button b = new Button("Click Here");
b.addActionListner(new ActionListener() {
@Override
public void actionPerformed(ActionEvent evt) {
// some action
}
});
Java의 다중 액션 리스너
위에서 설명한 것을 확장하는 것만으로 여러 액션 리스너를 만들 수 있습니다.
예제 코드: 익명 클래스 사용
JButton multiplyButton = new JButton(new AbstractAction("multiply") {
@Override
public void actionPerformed(ActionEvent evt) {
// some action
}
});
JButton divideButton = new JButton(new AbstractAction("divide") {
@Override
public void actionPerformed(ActionEvent evt) {
// some action
}
});