0
Java 애플릿 (JApplet 클래스 사용)이 있으며 애플릿 창이 활성화 될 때 이벤트를 가져 오려고합니다. WindowListener와 FocusListener를 구현하려고했지만 이벤트를받지 못했습니다. 애플릿 윈도우가 포커스를 받았는지 알아 내기 위해 무엇을해야합니까? 추가애플릿에서 포커스 또는 창 이벤트 수신 안 함
public class AppletTest extends JApplet implements WindowListener, FocusListener {
public void init() {
// addWindowListener(this); // Won't compile
addFocusListener(this);
}
public void actionPerformed(ActionEvent event){
Object source = event.getSource();
String command = event.getActionCommand();
}
@Override
public void focusGained(FocusEvent e) {
System.out.println("focusGained");
}
@Override
public void focusLost(FocusEvent e) {}
@Override
public void windowActivated(WindowEvent e) {
System.out.println("windowActivated");
}
// Stub methods
@Override
public void windowOpened(WindowEvent e) {}
@Override
public void windowClosing(WindowEvent e) {}
@Override
public void windowClosed(WindowEvent e) {}
@Override
public void windowIconified(WindowEvent e) {}
@Override
public void windowDeiconified(WindowEvent e) {}
@Override
public void windowDeactivated(WindowEvent e) {}
}
실제로 제가 요청한 문제를 해결합니다. 감사합니다! –
그러나, 상당히 복잡해지는 제작 코드에서는 항상 해고되는 것은 아닙니다. 내 애플릿에는 모덜리스 JPanel도있다. 그 JPanel 중 하나가 위에 있고 기본 애플릿 창을 클릭하면 focusGained 이벤트가 시작되지 않습니다. 내 기본 애플릿 창이 zOrder의 맨 위로 가져 왔을 때 이벤트를 얻을 수있는 방법이 있습니까? –