1》:java中如菜单相关的类主要有:MenuBar(菜单条),Menu(菜单),MenuItem(菜单项);

2,任务:完成图中所示的例子


3.代码

(1)testMenu.java

package testMenu;
import java.awt.*;
import java.awt.event.*;

public class testMenu extends Frame {
	MenuBar mb=new MenuBar();
	Menu fileM=new Menu("File");
	Menu editM=new Menu("Edit");
	Menu toolM=new Menu("Tool");
	Menu helpM=new Menu("Help");
	
	MenuItem fileM1=new MenuItem("New");
	MenuItem fileM2=new MenuItem("Open");
	MenuItem fileM3=new MenuItem("Save");
	//子菜单
	Menu fileM4=new Menu("Print");
	MenuItem printM1=new MenuItem("Preview");
        MenuItem printM2=new MenuItem("Setting");
	//复选项
	CheckboxMenuItem fileM5=new CheckboxMenuItem("Quit");

	public testMenu()
	{
		//菜单条
		mb.add(fileM);
		mb.add(editM);
		mb.add(toolM);
		mb.add(helpM);
		//file子菜单
		fileM.add(fileM1);
		fileM.add(fileM2);
		fileM.add(fileM3);
		fileM.add(fileM4);
		fileM.addSeparator();
		fileM.add(fileM5);
		//print 子菜单
		fileM4.add(printM1);
		fileM4.add(printM2);
		menuListener ml=new menuListener();
		printM1.addActionListener(ml);
		printM2.addActionListener(ml);
		this.setMenuBar(mb);
		
		addWindowListener(new WindowAdapter()
		{
			public void windowClosing(WindowEvent e)
			{
				dispose();
				System.exit(0);
			}		
		});

	}
	public static void main(String[] args) {
		// TODO Auto-generated method stub

		testMenu dw=new testMenu();
		dw.setSize(400, 300);
		dw.setTitle("DrawLine");
		dw.setVisible(true);
		
		
	}

}
(2).menuListener.java
package testMenu;
import java.awt.event.*;
public  class menuListener implements ActionListener {
  public void actionPerformed(ActionEvent e) {
       if( e.getActionCommand().equals("Preview"))
       {
    	   System.out.println("doing Preview");
       }else if(e.getActionCommand().equals("Setting"))
       {
    	   System.out.println("doing Setting");
       }	
  }	

}







4.新信息


public String getActionCommand()


返回与此动作相关的命令字符串。


注意,如果将 null 命令字符串传递给此 ActionEvent 的构造方法,则此方法返回 null



返回:

标识此事件命令的字符串


——————————————————————————————————————————————————————