• Java学习——Applet菜单


    程序功能:在窗口中添加菜单栏,在菜单栏添加菜单项,并添加下拉菜单和 2 级菜单,通过选择菜单项可以执行不同操作,生成如下图所示窗口。

    package cys;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    
    public class Menu extends JFrame implements ActionListener{
        
        JMenu menu1,menu2,submenu;
        JMenuBar menubar;
        JButton quit;
        
        
        
        public Menu() {
            super("添加菜单的窗口");
            Container con = getContentPane();
            con.setLayout(null);
            quit = new JButton("退出");    
            quit.addActionListener(this);
            con.add(quit);
            quit.setBounds(280,350,80,40);
    
            createmenu();
        }
        
        void createmenu() {
            menubar = new JMenuBar();
            setJMenuBar(menubar);
            menu1 = new JMenu("文件");
            
            JMenuItem menuitem1 = new JMenuItem("打开");
            JMenuItem menuitem2 = new JMenuItem("关闭");
            menu1.add(menuitem1);
            menu1.add(menuitem2);
            menu1.addSeparator();
            
            JMenuItem menuitem3 = new JMenuItem("退出");
            menu1.add(menuitem3);
            
            JMenu submenu = new JMenu("编辑");
            JMenuItem menuitem4 = new JMenuItem("复制");
            JMenuItem menuitem5 = new JMenuItem("剪切");
            JMenuItem menuitem6 = new JMenuItem("粘贴");
            submenu.add(menuitem4);
            submenu.add(menuitem5);
            submenu.add(menuitem6);
            menu1.add(submenu);
            
            menu2 = new JMenu("帮助");
            menubar.add(menu1);
            menubar.add(menu2);
            
        }
        
        public void actionPerformed(ActionEvent e) {
            if(e.getSource()==quit) {
                System.exit(0);
            }
        }
        
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            Menu mainFrame = new Menu();
            mainFrame.setSize(600,450);
            mainFrame.setVisible(true);
        }
    
    }

    其它例子:

    //【例6-26】  下拉式菜单创建示例。
    //程序清单6-26:  JMenuDemo.java
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    
    public class JMenuDemo extends JFrame {
        JMenuBar menuBar;
    
        JMenu menu, submenu;
    
        JMenuItem menuItem;
    
        JCheckBoxMenuItem cbMenuItem;
    
        JRadioButtonMenuItem rbMenuItem;
    
        public JMenuDemo() {
            super("JMenuDemo");
            addWindowListener(new WindowAdapter() {
                public void windowClosing(WindowEvent e) {
                    System.exit(0);
                }
            });
            createMenu();
        }
    
        void createMenu() {
            menuBar = new JMenuBar(); // 生成菜单条
            setJMenuBar(menuBar);
            menu = new JMenu("有菜单项菜单"); // 创建第一个菜单
            menu.setMnemonic(KeyEvent.VK_A);
            menuBar.add(menu);
            menuItem = new JMenuItem("文本菜单项"); // 创建菜单项
            menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_1,
                    ActionEvent.ALT_MASK));
            menu.add(menuItem);
            menuItem = new JMenuItem("图形菜单项", new ImageIcon("images/img.gif"));
            menuItem.setMnemonic(KeyEvent.VK_B);
            menu.add(menuItem);
            menuItem = new JMenuItem(new ImageIcon("images/img.gif"));
            menuItem.setMnemonic(KeyEvent.VK_D);
            menu.add(menuItem);
            menu.addSeparator(); // 创建单选菜单项
            ButtonGroup group = new ButtonGroup();
            rbMenuItem = new JRadioButtonMenuItem("单选菜单项一");
            rbMenuItem.setSelected(true);
            rbMenuItem.setMnemonic(KeyEvent.VK_R);
            group.add(rbMenuItem);
            menu.add(rbMenuItem);
            rbMenuItem = new JRadioButtonMenuItem("单选菜单项二");
            rbMenuItem.setMnemonic(KeyEvent.VK_O);
            group.add(rbMenuItem);
            menu.add(rbMenuItem);
            menu.addSeparator(); // 创建复选菜单项
            cbMenuItem = new JCheckBoxMenuItem("多选菜单项一");
            cbMenuItem.setMnemonic(KeyEvent.VK_C);
            menu.add(cbMenuItem);
            cbMenuItem = new JCheckBoxMenuItem("多选菜单项二");
            cbMenuItem.setMnemonic(KeyEvent.VK_H);
            menu.add(cbMenuItem);
            menu.addSeparator(); // 创建子菜单
            submenu = new JMenu("子菜单");
            submenu.setMnemonic(KeyEvent.VK_S);
            menuItem = new JMenuItem("子菜单菜单项一");
            menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_2,
                    ActionEvent.ALT_MASK));
            submenu.add(menuItem);
            menuItem = new JMenuItem("子菜单菜单项二");
            submenu.add(menuItem);
            menu.add(submenu);
            menu = new JMenu("无菜单项菜单"); // 创建菜单
            menu.setMnemonic(KeyEvent.VK_N);
            menuBar.add(menu);
        }
    
        public static void main(String[] args) {
            JMenuDemo mainFrame = new JMenuDemo();
            mainFrame.setSize(450, 260);
            mainFrame.setVisible(true);
        }
    }
    View Code

  • 相关阅读:
    rustlang入门教程
    中间件日志切割
    Redis非关系型缓存数据库集群部署、参数、命令工具
    SaltStack自动化软件简介及安装
    CentOS根目录下各目录介绍
    Dockerfile书写介绍及构建ssh镜像、tomcat镜像、nginx镜像
    DockerFile执行报错解决
    阿里云CentOS7.2把默认语言修改成中文
    JavaScript 如何判断一个数据的类型
    MongoDB windows 下安装配置
  • 原文地址:https://www.cnblogs.com/caiyishuai/p/10149367.html
Copyright © 2020-2023  润新知