java学习之菜单

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()
返回与此动作相关的命令字符串。
这使得 "modal" 组件可以由其当前的状态,通过此字符串来得到它能够产生的几个命令之一。例如,单个按钮可以在“显示详细信息”和“隐藏详细信息”之间切换。在所有情况下,源对象和事件都将是相同的,但命令字符串将会标识出实际对应的动作。

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

返回:
标识此事件命令的字符串


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

自《张孝祥--java就业教程》




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值