在java的可视化编程中,它亦提供了菜单栏相应的使用。
JAVA中的菜单
java中的菜单,可以通过引入
java.swing来实现。
在java中菜单有如下三大组件:JMenuBar,JMenu,JMenuItem。
JMenuBar是相关的菜单栏,一般一个窗体中有一个就可以了;
JMenu有两种功能,一是在菜单栏中显示,二是当它被加入到另一个JMenu中时,会产生引出子菜单的效果;
JMenuItem是JMenu目录下的菜单。
菜单的使用
以下的代码,将在窗体中添加一个菜单栏。同时有“新建”与“哪里”两项内容,在“哪里”中,又有两个子目录。
import java.awt.*; import javax.swing.*; public class abc { public static void main(String[] args) { // TODO Auto-generated method stub JFrame frm=new JFrame("This is a test!"); //实例化一个窗体 frm.setSize(200, 200); frm.setLocation(150, 150); JMenuBar mb=new JMenuBar(); //实例菜单栏 JMenu newj=new JMenu("新建"); //实例一个菜单项 JMenu oldj=new JMenu("哪里"); JMenuItem mi1=new JMenuItem("一个"); //实例子目录 JMenuItem mi2=new JMenuItem("例子"); frm.setJMenuBar(mb); //设置菜单栏 mb.add(newj); //添加菜单项 mb.add(oldj); oldj.add(mi1); //添加子目录 oldj.add(mi2); frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frm.setVisible(true); } }
产生子菜单
import java.awt.*; import javax.swing.*; public class abc { public static void main(String[] args) { // TODO Auto-generated method stub JFrame frm=new JFrame("This is a test!"); //实例化一个窗体 frm.setSize(200, 200); frm.setLocation(150, 150); JMenuBar mb=new JMenuBar(); //实例菜单栏 JMenu newj=new JMenu("新建"); //实例一个菜单项 JMenu oldj=new JMenu("哪里"); JMenuItem mi1=new JMenuItem("一个"); //实例子目录 JMenuItem mi2=new JMenuItem("例子"); frm.setJMenuBar(mb); //设置菜单栏 mb.add(newj); //添加菜单项 newj.add(oldj); //加入子菜单 oldj.add(mi1); //添加子目录 oldj.add(mi2); frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frm.setVisible(true); } }
两个代码所生成的对象是相等的。然而通过把一个JMenu加入到另一个JMenu中,便可以生成一个子菜单。