功能:添加菜单组件

知识总结:


代码如下:

import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.Menu;
import java.awt.MenuBar;
import java.awt.MenuItem;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent; class MyMenuDemo
{
private Frame f;//定义窗体
private MenuBar mb;//定义菜单栏
private Menu m,subMenu;//定义"文件"和"子菜单"菜单
private MenuItem closeItem,subItem;//定义条目“退出”和“子条目”菜单项 MyMenuDemo()
{
init();
} /*图形用户界面组件初始化*/
public void init()
{
f=new Frame("my window");//创建窗体对象
f.setBounds(300,100,500,600);//设置窗体位置和大小
f.setLayout(new FlowLayout());//设置窗体布局为流式布局 mb=new MenuBar();//创建菜单栏 m=new Menu("文件");//创建“文件”菜单
subMenu = new Menu("子菜单");//创建“子菜单”菜单 subItem=new MenuItem("子条目");//创建“子条目”菜单项
closeItem=new MenuItem("退出");//创建“退出"菜单项 m.add(subMenu);//将“子菜单”菜单添加到“文件”菜单上
m.add(closeItem);//将“退出”菜单项添加到“文件”菜单上 subMenu.add(subItem);//"子条目"菜单项添加到"子菜单"菜单项中 mb.add(m);//将文件添加到菜单栏上 f.setMenuBar(mb);//将此窗体的菜单栏设置为指定的菜单栏。 myEvent();//加载事件处理 f.setVisible(true);//设置窗体可见 }
private void myEvent()
{
// 窗体关闭监听
f.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0); } }); //退出菜单项监听
closeItem.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
} });
} public static void main(String[] args)
{
new MyMenuDemo();
}
}

程序截图:

上篇:10.JAVA之GUI编程弹出对话框Dialog               下篇:12.JAVA之GUI编程打开与保存文件

最新文章

  1. 使用EmBitz开发STM32项目的环境配置
  2. Java List合并去重
  3. java 转换流
  4. BZOJ3257 : 树的难题
  5. (转)ubuntu安装opengl
  6. 关键字const
  7. 利用QObject反射实现jsonrpc
  8. hadoop2.2原理:分析HDFS的文件读写
  9. HTML解析引擎:Jumony
  10. nyist 740 “炫舞家“ST(动态规划)
  11. IT互联网行业中相关职能的缩写
  12. 1-SDK开发初探-8266
  13. Linux - 用make进行工程编译
  14. json & pickle 序列化
  15. 深入浅出—Redis集群的相关详解
  16. centos7构建python2.7常用开发环境
  17. ssh 常用命令
  18. amazeui+canvas绘制二维码
  19. 【Unity】第9章 粒子系统
  20. Week2:阅读笔记与思考

热门文章

  1. 小白解决CENTOS7错误:Cannot find a valid baseurl for repo: base/7/x86_6
  2. Java 输出流中的flush方法
  3. javascript单元测试框架mochajs详解
  4. 一个IT人的成长路
  5. select、poll、epoll之间的区别总结
  6. [原] KVM 虚拟化原理探究(4)— 内存虚拟化
  7. Jvm 内存浅析 及 GC个人学习总结
  8. RSA算法
  9. js attribute 和 jquery attr 方法
  10. MySQL 优化之 ICP (index condition pushdown:索引条件下推)