AWT 编程时 ,窗口无法关闭
package sm;
import java.awt.CheckboxMenuItem;
import java.awt.Frame;
import java.awt.Menu;
import java.awt.MenuBar;
import java.awt.MenuItem;
import java.awt.MenuShortcut;
import java.awt.TextArea;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class SimpleMenu {
private Frame f=new Frame("菜单测试");
private MenuBar mb=new MenuBar();
Menu file =new Menu("文件");
Menu edit=new Menu("编辑");
MenuItem newItem=new MenuItem("新建");
MenuItem saveItem=new MenuItem("保存");
MenuItem exitItem=new MenuItem("退出",new MenuShortcut(KeyEvent.VK_X));
CheckboxMenuItem autoWrap=new CheckboxMenuItem("自动换行");
MenuItem copyItem=new MenuItem("复制");
MenuItem pasteItem =new MenuItem("黏贴");
Menu format=new Menu("格式");
MenuItem commentItem=new MenuItem("注释",new MenuShortcut(KeyEvent.VK_SLASH,true));
MenuItem cancelItem=new MenuItem("取消注释");
private TextArea ta=new TextArea(6,40);
public void init()
{
ActionListener menuListener=e->{
String cmd=e.getActionCommand();
ta.append("单击:"+cmd+"菜单"+"\n");
if(cmd.equals("退出"))
System.exit(0);
};
commentItem.addActionListener(menuListener);
exitItem.addActionListener(menuListener);
file.add(newItem);
file.add(saveItem);
file.add(exitItem);
edit.add(autoWrap);
edit.addSeparator();
edit.add(copyItem);
edit.add(pasteItem);
edit.add(new MenuItem("--"));
format.add(commentItem);
format.add(cancelItem);
edit.add(format);
mb.add(file);
mb.add(edit);
f.setMenuBar(mb);
f.addWindowListener(new WindowAdapter()
{
public void WindowClosing(WindowEvent e)
{
System.out.println("用户点击退出");
System.exit(0);
}
}
);
f.add(ta);
f.pack();
f.setVisible(true);
}
public static void main(String[] args) {
new SimpleMenu().init();
}
}
我现在通过菜单里的退出 和快捷键 都可以关闭窗口,但是直接点击窗口的右上角 X 号 去无法关闭窗口,为什么呢?
在 public void WindowClosing(WindowEvent e) 代码处提示:
The method WindowClosing(WindowEvent) from the type new WindowAdapter(){} is never used locally
请问是什么原因?谢谢了