GUI之菜单,一级菜单,多级菜单

it2023-10-08  63

菜单简介

菜单组件: MenuComponent A:MenuBer菜单栏 B:MenuItem菜单项 a:Menu菜单 先创建菜单栏(MenuBer) 在创建菜单 (Menu) 最后在菜单中创建菜单项(MenuItem) 也可以在菜单中添加菜单,作为子菜单 通过setMunBar方法,讲菜单添加到Frame中

一级菜单

package cn.itcast_09; 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; public class 一级菜单 { public static void main(String[] args) { //创建窗体对象并设置属性 Frame f = new Frame("一级菜单"); f.setBounds(400, 200, 400, 200); f.setLayout(new FlowLayout()); //创建菜单栏 MenuBar mb = new MenuBar(); //创建菜单 Menu m = new Menu("文件"); //创建菜单项 MenuItem mi = new MenuItem("退出系统"); m.add(mi); mb.add(m); //添加菜单栏 f.setMenuBar(mb); mi.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { System.exit(0); } }); //窗口关闭 f.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { System.exit(0); } }); //窗体显示 f.setVisible(true); } }

多级菜单

package cn.itcast_09; 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 多级菜单 { public static void main(String[] args) { //创建窗体对象并设置属性 Frame f = new Frame("多级菜单"); f.setBounds(400, 200, 400, 200); f.setLayout(new FlowLayout()); String name = f.getTitle(); //创建菜单栏 MenuBar mb = new MenuBar(); //创建菜单 Menu m = new Menu("文件"); Menu m2 = new Menu("更改名称"); //创建菜单项 MenuItem mi = new MenuItem("退出系统"); MenuItem mi2 = new MenuItem("打开记事本"); MenuItem mi3 = new MenuItem("好好学习"); MenuItem mi4 = new MenuItem("天天向上"); MenuItem mi5 = new MenuItem("回复标题"); m.add(mi); m.add(m2); m.add(mi2); m2.add(mi3); m2.add(mi4); m2.add(mi5); mb.add(m); //添加菜单栏 f.setMenuBar(mb); //退出系统 mi.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { System.exit(0); } }); //打开记事本 mi2.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { Runtime r = Runtime.getRuntime(); try { r.exec("notepad"); } catch (IOException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } }); //更改名称之好好学习 mi4.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { f.setTitle(mi3.getLabel()); } }); //更改名称之回复标题 mi5.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { f.setTitle(name); } }); //更改名称之天天向上 mi3.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { f.setTitle(mi4.getLabel()); } }); //窗口关闭 f.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { System.exit(0); } }); //窗体显示 f.setVisible(true); } }
最新回复(0)