日期:2014-05-20  浏览次数:20695 次

高手帮忙看下这段代码
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);
}
}
请问我注释掉的那段代码起什么作用啊!
我把它注释掉和不注释掉程序都没什么区别啊~
谢谢

------解决方案--------------------
java.awt
类 Component
java.lang.Object
java.awt.Component


action
@Deprecated
public boolean action(Event evt,
Object what)已过时。 从 JDK version 1.1 开始,应该将此组件作为组件(激发操作事件)上的 ActionListener 来注册。
------解决方案--------------------
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;
}
你把代码改成这样,就知道区别了。