jmenu可以形成多级子菜单,在这里向大家介绍。
import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Point;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
/**
* 菜单作为一种特殊的组件,有着特殊的用法。
* JMenuItem是菜单选项,是最小的
* JMenu是菜单头标题,里面可以有若干个JMenuItem选项
* JMenuBar是菜单条,里面可以加入若干个JMenu,主要的作用是规范菜单在jframe里面的位置
* jFrame.setJMenuBar(jMenuBar);//加入到后放入jframe里面去.
* 监听接口和按钮的监听接口是一样的ActionEvent
* @author Administrator
*
*/
public class JMenuTest {
public static void main(String[] args) {
//整体窗口的使用
JFrame jFrame=new JFrame("我的第一个窗体");
jFrame.setSize(new Dimension(800, 500));//设置窗体的大小
jFrame.setBackground(Color.BLACK);
jFrame.setLocation(new Point(300, 300));//设置窗体显示的位置
jFrame.setVisible(true);
jFrame.setLayout(new FlowLayout());
jFrame.addWindowListener(new WindowAdapter() {//加入关闭窗体事件
@Override
public void windowClosing(WindowEvent e) {
// TODO Auto-generated method stub
System.out.println("系统正在关闭");
System.exit(0);
}
});
JMenu jMenu=new JMenu("文件");//新建一个菜单头标题
JMenuItem jMenuItem1=new JMenuItem("新建");//菜单头下面的子菜单
JMenuItem jMenuItem2=new JMenuItem("打开");
JMenuItem jMenuItem3=new JMenuItem("保存");
JMenuItem jMenuItem4=new JMenuItem("另存为");
jMenu.add(jMenuItem1);//将子菜单加入到菜单头里面去
jMenu.add(jMenuItem2);
jMenu.add(jMenuItem3);
jMenu.add(jMenuItem4);
JMenu jMenu2=new JMenu("文件2");//新建一个菜单头标题
JMenuItem jMenuItem12=new JMenuItem("新建2");//菜单头下面的子菜单
JMenuItem jMenuItem22=new JMenuItem("打开2");
JMenuItem jMenuItem32=new JMenuItem("保存2");
JMenuItem jMenuItem42=new JMenuItem("另存为2");
jMenu2.add(jMenuItem12);//将子菜单加入到菜单头里面去
jMenu2.add(jMenuItem22);
jMenu2.add(jMenuItem32);
jMenu2.add(jMenuItem42);
jMenu.add(jMenu2);//把jMenu2菜单加入到jMenu1中,形成多级菜单
jMenuItem1.addActionListener(new ActionListener() {//绑定文件监听事件
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
System.out.println("新建文件事件");
}
});
JMenuBar jMenuBar=new JMenuBar();//菜单条可以存放JMenu的组件
jMenuBar.add(jMenu);//加入到菜单条里面去
jFrame.setJMenuBar(jMenuBar);//加入到后放入jframe里面去
}
}