/**菜单*/import java.awt.*;
import java.awt.event.*;
import javax.swing.*;public class A0073  implements ItemListener ,ActionListener{
JFrame f = new JFrame("天天");
JTextField tf = new JTextField();

public static void main(String[] args){
A0073 CD = new A0073();
CD.go();

}
public void go(){
JMenuBar mb = new JMenuBar();
f.setJMenuBar(mb);                   //菜单栏

JMenu m1,m2;               //菜单和子菜项
  JMenuItem mit;             //菜单项

m1 = new JMenu("文件");
m1.setMnemonic(KeyEvent.VK_F);    //设置快捷键
mit.add(m1);

mit = new JMenuItem("打开");
mit.setMnemonic(KeyEvent.VK_O);    
mit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_1,ActionEvent.ALT_MASK)); //设置加速键

mit.addActionListener(this);
m1.add(mb);


mit = new JMenuItem("保存");
mit.addActionListener(this);
mit.setEnabled(false);  //设置为不可用
m1.add(mb);

mit = new  JMenuItem("返回");
mit.addActionListener(this);
    m1.add(mb);

m1.add(new JSeparator());      // 加入分隔线

mit = new JMenuItem("关闭");
mit.addActionListener(this);
m1.add(mit);

m1 = new JMenu("编辑");
mb.add(m1);

m1.add("哦野");

m2 = new JMenu("删除");
m1.add(m2);

mit = new JMenuItem("第一个");
mit.addActionListener(this);
m2.add(mit);

mit = new JMenuItem("下一个");
mit.addActionListener(this);
m2.add(mit);

m1.addSeparator();   //加入分隔线
JCheckBoxMenuItem cbm = new JCheckBoxMenuItem("酷");
    cbm.addItemListener(this);
    m1.add(cbm);
    
    m1.addSeparator();
    JRadioButtonMenuItem rbm = new JRadioButtonMenuItem("呼");
    rbm.addItemListener(this);
    m1.add(rbm);
    ButtonGroup bg = new ButtonGroup();
    bg.add(rbm);
    
    rbm = new JRadioButtonMenuItem("千");
    rbm.addItemListener(this);  // 添加侦听器,以接收用户更改项状态时的项事件。
    m1.add(rbm);
    bg.add(rbm);
    
    m1 = new JMenu("帮助");
    mb.add(m1);
    mit = new JMenuItem("打开",new ImageIcon("5.gif"));
    mit.addActionListener(this);
    m1.add(mit);
    tf.setEditable(false);
    
    Container cp = f.getContentPane();
    cp.add(tf,BorderLayout.SOUTH);
    
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    f.setSize(600,500);
    f.setVisible(true);
    

   
}

public void itemStateChanged(ItemEvent e){
int a = e.getStateChange();             //返回状态更改的类型(指示已选定还是已取消选定项的整数)
JMenuItem ca = (JMenuItem)e.getSource();//读取事件
String s = ca.getText();
if(a == ItemEvent.SELECTED)  //ItemEvent.SELECTED  此状态更改值指示项被选定
  tf.setText(s + "SELECTED");
else
  tf.setText(s + "DESELECTED"); //DESELECTED 此状态更改值指示已选定的项被取消选定
}

public void actionParformed(ActionEvent e){
tf.setText(e.getActionCommand());

if(e.getActionCommand() == "关闭"){
System.exit(0);
}
}
}  

解决方案 »

  1.   

    import java.awt.*; 
    import java.awt.event.*; 
    import javax.swing.*; public class t  implements ItemListener ,ActionListener{ 
    JFrame f = new JFrame("天天");   
    JTextField tf = new JTextField();  public static void main(String[] args){ 
    t CD = new t();
    CD.go(); 

    public void go(){  JMenuBar mb = new JMenuBar(); 
    f.setJMenuBar(mb);                   //菜单栏  JMenu m1,m2;               //菜单和子菜项 
       JMenuItem mit;             //菜单项  m1 = new JMenu("文件"); 
    m1.setMnemonic(KeyEvent.VK_F);    //设置快捷键 
    mb.add(m1);  mit = new JMenuItem("打开"); 
    mit.setMnemonic(KeyEvent.VK_O);     
    mit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_1,ActionEvent.ALT_MASK));
    m1.add(mit);
    mit.addActionListener(this); 
    mit = new JMenuItem("保存"); 
    mit.addActionListener(this); 
    mit.setEnabled(false);  //设置为不可用 
    m1.add(mit);  mit = new  JMenuItem("返回"); 
    mit.addActionListener(this); 
         m1.add(mit);  m1.add(new JSeparator());      // 加入分隔线  mit = new JMenuItem("关闭"); 
    mit.addActionListener(this); 
    m1.add(mit);  m1 = new JMenu("编辑"); 
    mb.add(m1);  m1.add("哦野");  m2 = new JMenu("删除"); 
    m1.add(m2);  mit = new JMenuItem("第一个"); 
    mit.addActionListener(this); 
    m2.add(mit);  mit = new JMenuItem("下一个"); 
    mit.addActionListener(this); 
    m2.add(mit);  m1.addSeparator();   //加入分隔线 
    JCheckBoxMenuItem cbm = new JCheckBoxMenuItem("酷"); 
         cbm.addItemListener(this); 
         m1.add(cbm); 
        
         m1.addSeparator(); 
         JRadioButtonMenuItem rbm = new JRadioButtonMenuItem("呼"); 
         rbm.addItemListener(this); 
         m1.add(rbm);      ButtonGroup bg = new ButtonGroup(); 
         bg.add(rbm); 
        
         rbm = new JRadioButtonMenuItem("千"); 
         rbm.addItemListener(this);  // 添加侦听器,以接收用户更改项状态时的项事件。 
         m1.add(rbm); 
         bg.add(rbm); 
        
         m1 = new JMenu("帮助"); 
         mb.add(m1);      mit = new JMenuItem("打开",new ImageIcon("5.gif")); 
         mit.addActionListener(this); 
         m1.add(mit);      tf.setEditable(false); 
         
         Container cp = f.getContentPane(); 
         cp.add(tf,BorderLayout.SOUTH);   f.setSize(600,500);
    f.setVisible(true);  
    }  public void itemStateChanged(ItemEvent e){ 
    int a = e.getStateChange();             //返回状态更改的类型
    JMenuItem ca = (JMenuItem)e.getSource();//读取事件 
    String s = ca.getText(); 
    if(a == ItemEvent.SELECTED){  //ItemEvent.SELECTED  此状态更改值指示项被选定 
        tf.setText(s + "SELECTED"); 
    }else {
        tf.setText(s + "DESELECTED"); //DESELECTED 此状态更改值指示已选定的项被取消选定 

    }
    public void actionPerformed(ActionEvent e){ 
    tf.setText(e.getActionCommand());  if(e.getActionCommand() == "关闭"){ 
    System.exit(0); 


    }
    自己看吧。。