A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 122125241 中级黑马   /  2015-7-12 13:20  /  836 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. package it.cast;
  2. import java.awt.FlowLayout;
  3. import java.awt.Frame;
  4. import java.awt.Menu;
  5. import java.awt.MenuBar;
  6. import java.awt.MenuItem;
  7. import java.awt.event.ActionEvent;
  8. import java.awt.event.ActionListener;
  9. import java.awt.event.WindowAdapter;
  10. import java.awt.event.WindowEvent;
  11. public class CaiDanDemo {
  12.         /*
  13.          * 多级菜单制作
  14.          */
  15.         public static void main(String[] args) {
  16.                 Frame frame = new Frame("坚持到无能为力,努力到感动自己");
  17.                 // 设置窗口属性X Y H W
  18.                 frame.setBounds(400, 200, 400, 300);
  19.                 // 设置流式布局
  20.                 frame.setLayout(new FlowLayout());
  21.                 // 创建菜单栏
  22.                 MenuBar bar = new MenuBar();
  23.                 // 创建菜单
  24.                 Menu menu = new Menu("文件");
  25.                 Menu menu1 = new Menu("一级菜单1");
  26.                 Menu menu2 = new Menu("一级菜单2");
  27.                 // 创建菜单项
  28.                 MenuItem item11 = new MenuItem("一级菜单11");
  29.                 MenuItem item12 = new MenuItem("一级菜单12");
  30.                 MenuItem item13 = new MenuItem("一级菜单13");
  31.                 MenuItem item21 = new MenuItem("一级菜单21");
  32.                 MenuItem item22 = new MenuItem("一级菜单22");
  33.                 MenuItem item23 = new MenuItem("一级菜单23");
  34.                 MenuItem item3 = new MenuItem("退出系统");
  35.                 // 菜单添加菜单项
  36.                 menu.add(menu1);
  37.                 menu.add(menu2);
  38.                 menu.add(item3);
  39.                 menu1.add(item11);
  40.                 menu1.add(item12);
  41.                 menu1.add(item13);
  42.                 menu2.add(item21);
  43.                 menu2.add(item22);
  44.                 menu2.add(item23);
  45.                 // 菜单栏添加菜单
  46.                 bar.add(menu);
  47.                 // 窗口添加菜单栏
  48.                 frame.setMenuBar(bar);
  49.                 item3.addActionListener(new ActionListener() {
  50.                         @Override
  51.                         public void actionPerformed(ActionEvent e) {
  52.                                 System.exit(0);
  53.                         }
  54.                 });
  55.                 // 窗口显示化
  56.                 frame.setVisible(true);
  57.                 // 关闭窗口,时间监听机制.手动关闭
  58.                 // 关闭窗口调用addWindowListener()方法,需要关闭就需要用WindowListener接口中的关闭方法是windowClosing()
  59.                 // 但是接口实现需要重写里面的所有方法,太多的话比较麻烦.所以我们调用这个接口的子类,通过子类重写我们需要用的那个方法就可以,这就是适配器
  60.                 frame.addWindowListener(new WindowAdapter() {
  61.                         @Override
  62.                         public void windowClosing(WindowEvent e) {
  63.                                 System.exit(0);
  64.                         }
  65.                 });
  66.         }
  67. }
复制代码


1 个回复

倒序浏览
学习了................
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马