介绍Swing菜单和菜单项

开发 后端
本文介绍Swing菜单和菜单项,JMenuItem和JMenu的父组件,它们最后都归于java.awt.Container,以强调菜单和菜单项都是容器。

Swing菜单和菜单项是按钮,因为JMenuItem扩展AbstractButton,JMenu扩展JMenuItem。因此,Swing菜单和菜单项继承了如下功能,即包含文本和(或)图标、显示光标进入时的图标和助记符等。

JMenuItem和JMenu的父组件,它们***都归于java.awt.Container,以强调菜单和菜单项都是容器。可以把任何类型的组件(从包含一个动画GIF的标签到JTree的一个实例)添加到一个菜单或菜单项中。

Swing菜单和菜单项还实现MenuElement接口,以便参与菜单事件的处理。工具条和弹出式菜单都扩展JComponent类,即任意组件都可以添加到一个工具条或弹出式菜单中,介绍下面的组件:
◆JMenuItem
◆JCheckBoxMenuItem
◆JRadioButtonMenuItem
◆JMenu
◆JPopupMenu
◆JMenuBar

例子 1:在菜单中增加复选菜单

  1. importjava.awt.event.KeyEvent;  
  2.  
  3. importjavax.swing.JCheckBoxMenuItem;  
  4. importjavax.swing.JFrame;  
  5. importjavax.swing.JMenu;  
  6. importjavax.swing.JMenuBar;  
  7. importjavax.swing.JMenuItem;  
  8.  
  9. publicclassJCheckBoxMenuItemDemo{  
  10.  
  11. publicstaticvoidmain(finalStringargs[]){  
  12. JFrameframe=newJFrame("MenuSampleExample");  
  13. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
  14. JMenuBarmenuBar=newJMenuBar();  
  15.  
  16. //FileMenu,F-Mnemonic  
  17. JMenufileMenu=newJMenu("File");  
  18. fileMenu.setMnemonic(KeyEvent.VK_F);  
  19. menuBar.add(fileMenu);  
  20.  
  21. //File->New,N-Mnemonic  
  22. 22.JMenuItemnewMenuItem=newJMenuItem("New",KeyEvent.VK_N);  
  23. fileMenu.add(newMenuItem);  
  24.  
  25. JCheckBoxMenuItemcaseMenuItem=newJCheckBoxMenuItem("CaseSensitive");  
  26. caseMenuItem.setMnemonic(KeyEvent.VK_C);  
  27. fileMenu.add(caseMenuItem);  
  28.  
  29. frame.setJMenuBar(menuBar);  
  30. frame.setSize(350,250);  
  31. frame.setVisible(true);  
  32. }  

【编辑推荐】

  1. 浅谈学习Swing组件
  2. Swing使用invokeLater()方法
  3. 浅析Swing组件的规则
  4. 详解Swing中JTree组件的功能
  5. 简单介绍Swing外观
责任编辑:佚名 来源: 电子工业出版社
相关推荐

2009-08-27 09:38:02

Windows 7开始菜单

2010-01-13 15:33:40

VB.NET菜单项目

2009-07-27 16:43:51

自定义Eclipse菜

2011-08-29 10:38:42

用LINQ去除重复菜单

2009-08-14 17:43:20

C#Windows应用

2009-12-14 13:38:59

VS 类视图

2021-07-21 05:31:39

Windows 11操作系统微软

2009-11-09 10:08:31

Visual Stud

2010-06-02 09:06:26

SVN学习

2011-09-06 14:36:34

触摸菜单ipad应用电子点菜

2009-07-17 11:13:46

AWT和SwingSwing组件

2010-01-08 18:31:45

VB.NET历史菜单

2014-12-15 09:53:55

Android侧滑菜单SlidingMenu

2011-04-14 10:34:08

BlackBerry

2021-01-21 12:04:05

Windows 10UI界面微软

2009-07-17 15:30:30

JFaceAWT和SWTSwing

2015-07-20 15:14:19

侧滑菜单功能多样

2021-01-26 09:50:06

鸿蒙HarmonyOS远程调用

2009-11-05 10:33:06

CSS菜单

2010-01-04 11:36:05

Ubuntu GRUB
点赞
收藏

51CTO技术栈公众号