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 }