• FrameDemo6_1


    package cn.itcast;
    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;
    import java.io.IOException;
    /*
     * 多级菜单
     */
    public class FrameDemo6_1 {
     public static void main(String[] args) {
      // 创建窗体对象并设置属性
      Frame f = new Frame("多级菜单");
      f.setBounds(400, 200, 400, 300);
      f.setLayout(new FlowLayout());
      // 创建菜单栏
      MenuBar mb = new MenuBar();
      // 创建菜单
      Menu m1 = new Menu("File");
      Menu m2 = new Menu("upperTitle");
      // 创建菜单项
      MenuItem mi1 = new MenuItem("好好学习");
      MenuItem mi2 = new MenuItem("天天向上");//好好学习称为标签
      MenuItem mi3 = new MenuItem("恢复标题");
      MenuItem mi4 = new MenuItem("打开记事本");
      MenuItem mi5 = new MenuItem("退出系统");
      String name = f.getTitle();
      // 添加菜单组件
      m2.add(mi1);
      m2.add(mi2);
      m2.add(mi3);
      mb.add(m2);
      m1.add(m2);
      m1.add(mi4);
      m1.add(mi5);
      mb.add(m1);
      // 设置菜单栏
      f.setMenuBar(mb);
      // 设置窗体关闭
      f.addWindowListener(new WindowAdapter() {
       @Override
       public void windowClosing(WindowEvent e) {
        // TODO Auto-generated method stub
        super.windowClosing(e);
        System.exit(0);
       }
      });
      mi1.addActionListener(new ActionListener() {
       @Override
       public void actionPerformed(ActionEvent e) {
        // TODO Auto-generated method stub
        f.setTitle(mi1.getLabel());
       }
      });
      mi3.addActionListener(new ActionListener() {
       @Override
       public void actionPerformed(ActionEvent e) {
        // TODO Auto-generated method stub
        f.setTitle(name);
       }
      });
      mi4.addActionListener(new ActionListener() {
       @Override
       public void actionPerformed(ActionEvent e) {
        // TODO Auto-generated method stub
        Runtime r = Runtime.getRuntime();
        try {
         r.exec("calc");
        } catch (IOException e1) {
         // TODO Auto-generated catch block
         e1.printStackTrace();
        }
       }
      });
      mi5.addActionListener(new ActionListener() {
       @Override
       public void actionPerformed(ActionEvent e) {
        // TODO Auto-generated method stub
        System.exit(0);
       }
      });
      // 设置窗体可见
      f.setVisible(true);
     }
    }
  • 相关阅读:
    LeetCode206翻转链表问题,多解法求解
    使用GCC编译c源程序经历的几个步骤
    部分内置函数(不含面向对象型)
    Python初学1
    函数的作用域与匿名函数
    生成器函数以及生产消费模型
    【VC编译错误】error C2872: 'ofstream' : ambiguous symbol
    【C开发】无限循环 while(1) 和 for(; ;)
    【C开发】预编译处理命令(#define、typedef、#include、#运算符)
    编译DLL出现无法解析的外部符号
  • 原文地址:https://www.cnblogs.com/rong123/p/9894341.html
Copyright © 2020-2023  润新知