JAVA GUI学习 - JMenuBar菜单条、JMenu菜单、JMenuItem菜单项组件学习

 1 public class MenuBarKnow extends JFrame

 2 {

 3     JMenuBar jMenuBar;

 4     

 5     JMenu jMenuFile,jMenuEditor,jMenuAbout;

 6     JMenu jMenuOpen;

 7     

 8     JMenuItem jMenuItemSave,jMenuItemEditor,jMenuItemExit;

 9     JMenuItem jMenuItemWord,jMenuItemTxt;

10     

11     public MenuBarKnow()

12     {

13         init();

14         this.setLayout(null);

15         this.setSize(300, 400);

16         this.setTitle("你信不信,这个是menu!");

17         //设置setLocationRelativeTo应在setSize之后设置

18         this.setLocationRelativeTo(null);

19         this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

20         

21         //当this设置layout为null时,可以根据需要进行菜单的定位

22 //            this.add(jMenuBar);

23 //            jMenuBar.setBounds(10, 100, 300, 30);

24         //加入菜单的第二种方法:

25         this.setJMenuBar(jMenuBar);

26         

27         jMenuBar.add(jMenuFile);jMenuBar.add(jMenuEditor);jMenuBar.add(jMenuAbout);

28         

29         jMenuOpen.add(jMenuItemTxt);jMenuOpen.add(jMenuItemWord);

30         

31         jMenuFile.add(jMenuOpen);

32         jMenuFile.add(jMenuItemSave);

33         

34         jMenuEditor.add(jMenuItemEditor);

35         

36         jMenuAbout.add(jMenuItemExit);

37         

38         addListener();

39     }

40     public void init()

41     {

42         jMenuBar = new JMenuBar();

43         

44         jMenuAbout = new JMenu("系统");

45         jMenuEditor = new JMenu("编辑");

46         jMenuFile = new JMenu("文件");

47         jMenuOpen = new JMenu("打开文件类型");

48         

49         jMenuItemEditor = new JMenuItem("开始编辑");

50         jMenuItemExit = new JMenuItem("退出系统");

51         jMenuItemSave = new JMenuItem("保存");

52         jMenuItemTxt = new JMenuItem("Txt文件");

53         jMenuItemWord = new JMenuItem("Word文件");

54         

55         //设置Item快捷键,方式一

56         jMenuItemEditor.setAccelerator(KeyStroke.getKeyStroke('s'));

57         //设置Item快捷键,方式二

58         jMenuItemExit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,KeyEvent.ALT_MASK));

59         //设置Menu快捷键,这个快捷键必须和alt搭配使用

60         jMenuFile.setMnemonic('f');

61         /*****************************ToolBar的使用************************************/

62         //即:快捷按钮的使用,将JButton添加至JToolBar即可

63     }

64     public void addListener()

65     {

66         //设置Item的监听事件,以触发相应的事件发生

67         MenuItemActionListener menuItemActionListener = new MenuItemActionListener();

68         jMenuItemEditor.addActionListener(menuItemActionListener);

69         jMenuItemExit.addActionListener(menuItemActionListener);

70         jMenuItemSave.addActionListener(menuItemActionListener);

71         jMenuItemTxt.addActionListener(menuItemActionListener);

72         jMenuItemWord.addActionListener(menuItemActionListener);

73     }

74     public static void main(String[] args)

75     {

76         MenuBarKnow menuBarKnow = new MenuBarKnow();

77         menuBarKnow.setVisible(true);

78     }

79     

80     private class MenuItemActionListener implements ActionListener

81     {

82         @Override

83         public void actionPerformed(ActionEvent e)

84         {

85             JMenuItem jMenuItem = (JMenuItem) e.getSource();

86             JOptionPane.showMessageDialog(null, jMenuItem.getText());

87         }

88     }

89 }

 

你可能感兴趣的:(java)