import java.awt.*;
import java.awt.event.*;
public class MenuDemo extends Frame
{
    MenuDemo()
     {
         super("MenuItem Example");
         MenuBar mb=new MenuBar();
         Menu m=new Menu("File");
         MenuItem mi=new MenuItem("New");
         mi.setEnabled(false);
m.add(mi);
m.add("Open...");
m.add("-");
m.add("Exit");
mb.add(m);
setMenuBar(mb);
setSize(300,200);
setVisible(true);
addWindowListener(new Win());
     }

/*public boolean action(Event evt, Object what)
{
if("New".equals(what))
{ return true;
}else if("Open...".equals(what))
         { return true;
}
          return false;
}*/
public static void main(String[] args)
{
new MenuDemo();
}
}
class Win extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}
请问我注释掉的那段代码起什么作用啊!
我把它注释掉和不注释掉程序都没什么区别啊~
谢谢

解决方案 »

  1.   

    java.awt 
    类 Component
    java.lang.Object
      java.awt.Component
    action
    @Deprecated
    public boolean action(Event evt,
                                     Object what)已过时。 从 JDK version 1.1 开始,应该将此组件作为组件(激发操作事件)上的 ActionListener 来注册。
      

  2.   

    binny您的意思是这个方法过时了啊~
    所以没用吗?
      

  3.   

    public boolean action(Event evt, Object what) {
            if ("New".equals(what)) {
                System.out.println("you select New");
                return true;
            } else if ("Open...".equals(what)) {
                System.out.println("you select Open");
                return true;
            }
            return false;
        }
    你把代码改成这样,就知道区别了。