我有下面的Java代码片断:如何触发事件?
public static void main(String[] args) {
String filename = args[0];
JFrame f = new JFrame("Load Image Sample");
f.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
f.add(new LoadImageApp(filename));
f.pack();
f.setVisible(true);
}
在其中限定的WindowClosing
事件。我如何在代码中触发/执行/启动此事件,导致代码退出?
其他问题:什么是这个建筑我在代码中看到:
new WindowAdapter(){...}
即正常括号其次是花的呢?
事件由'JFrame'对象触发,而不是由您触发。第二个问题的答案是它是一个匿名类,您可以在编码时即时定义它。 – Jagger
'New WindowAdapter(){...}'被称为匿名类。首先,“正常括号”被称为括号。其次,当你只需要重写一个类的一个功能时,匿名类就很有用。了解它[这里](http://docs.oracle.com/javase/tutorial/java/javaOO/anonymousclasses.html) –
您可以使用WindowAdapter wa = new WindowAdapter ...然后将WindowAdapter对象传递给addListener,现在你可以从外部操纵WindowAdapter了。 – porfiriopartida