JMenuBar

来源:互联网 发布:免费com域名注册 编辑:程序博客网 时间:2024/06/18 05:16
JMenuBarDemo.java
01 package cn.rolia.learning.swing;
02 //JMenu 继承自JMenuItem,它们都在javax.swing包中,都实现了Accessible, MenuElement 接口
03 import java.awt.Color;
04 import javax.swing.JFrame;
05 import javax.swing.JMenuBar;
06 import javax.swing.JMenu;
07 import javax.swing.JMenuItem;
08 import javax.swing.JPanel;
09 import java.awt.Dimension;
10 
11 public class JMenuBarDemo
12 {
13  public static void main (String[] args)
14  {
15   //try{javax.swing.UIManager.setLookAndFeel(javax.swing.UIManager.getSystemLookAndFeelClassName());}catch(Exception e){}
16   JPanel panel = new JPanel ();
17   panel.setBackground (Color.white);
18   panel.setPreferredSize (new Dimension (600,400));
19   //JMenu 有箭头(除了顶层的),可以添加JMenu和JMenuItem;
20   //JMenuItem 无箭头,不可添加其他菜单项
21   JMenu file, edit, search, item, view, format, macro, advance, windows, help;
22   file = new JMenu ("File");
23   edit = new JMenu ("Edit");
24   search = new JMenu ("Search"true);
25   item = new JMenu ("Item");
26   view = new JMenu ("View");
27   format = new JMenu ("Format");
28   macro = new JMenu ("Macro");
29   advance = new JMenu ("Advance");
30   windows = new JMenu ("Windows");
31   help = new JMenu ("Help");
32   
33   JMenuItem xin, open, close, save, saveAs;
34   xin = new JMenuItem ("New"'n');//热键为'n'
35   open = new JMenuItem ("Open");
36   close = new JMenuItem ("Close");
37   save = new JMenuItem ("Save");
38   saveAs = new JMenuItem ("Save As");
39   
40   JMenu del = new JMenu("Del");
41   del.add ("Del All");
42   JMenuItem delLine = new JMenuItem ("Del Line")//这行加下行与上行等价
43   del.add (delLine);
44   delLine.setEnabled (false);
45   edit.add (del);
46 
47   file.add (xin);
48   file.add (open);
49   file.add (close);
50   file.addSeparator ();//加一条分隔线
51   file.add (save);
52   file.add (saveAs);
53   
54   
55   JMenuBar bar = new JMenuBar ();
56   bar.add (file);
57   bar.add (edit);
58   bar.add (search);
59   bar.add (item);
60   bar.add (view);
61   bar.add (format);
62   bar.add (macro);
63   bar.add (advance);
64   bar.add (windows);
65   bar.add (help);
66   
67   JFrame frame = new JFrame ("JMenuBarDemo");
68   frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
69   
70   frame.setContentPane (panel);
71   frame.setJMenuBar (bar);
72   frame.pack();
73   frame.setVisible(true);
74  }
75 }