JAVA图形界面(GUI)之菜单

来源:互联网 发布:cad天正建筑软件 编辑:程序博客网 时间:2024/05/29 18:03

菜单是我们很常见的一种组件,可以方便我们进行操作,JAVA中也提供了菜单的支持。这一篇博客将演示在JAVA中如何使用菜单。我们以记事本的部分菜单为例。

import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import javax.swing.JFrame;import javax.swing.JMenu;import javax.swing.JMenuBar;import javax.swing.JMenuItem;import javax.swing.JPopupMenu;import javax.swing.JScrollPane;import javax.swing.JTextArea;/** * 菜单示例 *  * @author jianggujin * */public class MenuDemo extends JFrame{   public MenuDemo()   {      super("MenuDemo");      // 菜单栏      JMenuBar menuBar = new JMenuBar();      JMenu file = new JMenu("文件(F)");      // 设置助记符为F,按下ALT + F 可以触发该菜单      file.setMnemonic('F');      JMenuItem open = new JMenuItem("打开");      JMenuItem quit = new JMenuItem("退出");      file.add(open);      // 设置菜单分隔符      file.addSeparator();      file.add(quit);      menuBar.add(file);      // 设置菜单栏,使用这种方式设置菜单栏可以不占用布局空间      setJMenuBar(menuBar);      // 以上为普通菜单,菜单还有一种为弹出式菜单,通过鼠标右击弹出      final JPopupMenu menu = new JPopupMenu();      JMenuItem pop = new JMenuItem("编辑");      menu.add(pop);      JTextArea textArea = new JTextArea();      // 添加鼠标事件监听器,使用适配器      textArea.addMouseListener(new MouseAdapter() {         public void mouseReleased(MouseEvent e)         {            if (e.isPopupTrigger())            {               // 显示弹出式菜单               menu.show(e.getComponent(), e.getX(), e.getY());            }         }      });      add(new JScrollPane(textArea));      setSize(400, 300);      setLocationRelativeTo(null);      setDefaultCloseOperation(EXIT_ON_CLOSE);      setVisible(true);   }   public static void main(String[] args)   {      new MenuDemo();   }}

运行结果:

这里写图片描述

这里写图片描述

0 0
原创粉丝点击