zoukankan      html  css  js  c++  java
  • 吴裕雄--天生自然JAVA图形界面编程学习笔记:菜单组件

    import java.awt.event.WindowAdapter ;
    import java.awt.event.WindowEvent ;
    import java.awt.Container ;
    import java.io.File ;
    import javax.swing.JFrame ;
    import javax.swing.ImageIcon ;
    import javax.swing.JTextArea ;
    import javax.swing.JScrollPane ;
    import javax.swing.JMenu ;
    import javax.swing.JMenuBar ;
    
    public class JMenuDemo01{
        public static void main(String args[]){
            JFrame frame = new JFrame("Welcome To MLDN") ;
            JTextArea text = new JTextArea() ;
            text.setEditable(true) ;    // 可编辑
            frame.getContentPane().add(new JScrollPane(text)) ;    // 加入滚动条
            JMenu menuFile = new JMenu("文件") ;
            menuFile.setIcon(new ImageIcon("d:"+File.separator+"icons"+File.separator+"file.gif")) ;
            JMenuBar menuBar = new JMenuBar() ;
            menuBar.add(menuFile) ;
            frame.setJMenuBar(menuBar) ;    // 菜单是需要通过此方法增加的
            frame.addWindowListener(new WindowAdapter(){
                public void windowClosing(WindowEvent e){
                    System.exit(1) ;
                }
            }) ;
            frame.setVisible(true) ;
            frame.setSize(300,100) ;
            frame.setLocation(300,200) ;
        }
    }
    import java.awt.event.WindowAdapter ;
    import java.awt.event.WindowEvent ;
    import java.awt.Container ;
    import java.io.File ;
    import javax.swing.JFrame ;
    import javax.swing.ImageIcon ;
    import javax.swing.JTextArea ;
    import javax.swing.JScrollPane ;
    import javax.swing.JMenu ;
    import javax.swing.KeyStroke ;
    import javax.swing.JMenuBar ;
    import javax.swing.JMenuItem ;
    
    public class JMenuDemo02{
        public static void main(String args[]){
            JFrame frame = new JFrame("Welcome To MLDN") ;
            JTextArea text = new JTextArea() ;
            text.setEditable(true) ;    // 可编辑
            frame.getContentPane().add(new JScrollPane(text)) ;    // 加入滚动条
            JMenu menuFile = new JMenu("文件") ;
            menuFile.setIcon(new ImageIcon("d:"+File.separator+"icons"+File.separator+"file.gif")) ;
            JMenuBar menuBar = new JMenuBar() ;
            menuBar.add(menuFile) ;
    
            JMenuItem newItem = new JMenuItem("新建",new ImageIcon("d:"+File.separator+"icons"+File.separator+"new.gif")) ;
            JMenuItem openItem = new JMenuItem("打开",new ImageIcon("d:"+File.separator+"icons"+File.separator+"open.gif")) ;
            JMenuItem closeItem = new JMenuItem("关闭",new ImageIcon("d:"+File.separator+"icons"+File.separator+"close.gif")) ;
            JMenuItem exitItem = new JMenuItem("退出",new ImageIcon("d:"+File.separator+"icons"+File.separator+"exit.gif")) ;
    
            // 此时定义完了四个菜单的选项,定义完成之后,增加快捷键
            newItem.setMnemonic('N') ;
            openItem.setMnemonic('O') ;
            closeItem.setMnemonic('C') ;
            exitItem.setMnemonic('E') ;
    
            newItem.setAccelerator(KeyStroke.getKeyStroke('N',java.awt.Event.CTRL_MASK)) ;
            openItem.setAccelerator(KeyStroke.getKeyStroke('O',java.awt.Event.CTRL_MASK)) ;
            closeItem.setAccelerator(KeyStroke.getKeyStroke('C',java.awt.Event.ALT_MASK)) ;
            exitItem.setAccelerator(KeyStroke.getKeyStroke('E',java.awt.Event.ALT_MASK)) ;
    
            menuFile.add(newItem) ;
            menuFile.add(openItem) ;
            menuFile.add(closeItem) ;
            menuFile.add(exitItem) ;
    
            frame.setJMenuBar(menuBar) ;    // 菜单是需要通过此方法增加的
            frame.addWindowListener(new WindowAdapter(){
                public void windowClosing(WindowEvent e){
                    System.exit(1) ;
                }
            }) ;
            frame.setVisible(true) ;
            frame.setSize(300,100) ;
            frame.setLocation(300,200) ;
        }
    }
    import java.awt.event.WindowAdapter ;
    import java.awt.event.WindowEvent ;
    import java.awt.event.ActionListener ;
    import java.awt.event.ActionEvent ;
    import java.awt.Container ;
    import java.io.File ;
    import javax.swing.JFrame ;
    import javax.swing.ImageIcon ;
    import javax.swing.JTextArea ;
    import javax.swing.JScrollPane ;
    import javax.swing.JMenu ;
    import javax.swing.KeyStroke ;
    import javax.swing.JMenuBar ;
    import javax.swing.JMenuItem ;
    
    public class JMenuDemo03{
        public static void main(String args[]){
            JFrame frame = new JFrame("Welcome To MLDN") ;
            final JTextArea text = new JTextArea() ;
            text.setEditable(true) ;    // 可编辑
            frame.getContentPane().add(new JScrollPane(text)) ;    // 加入滚动条
            JMenu menuFile = new JMenu("文件") ;
            menuFile.setIcon(new ImageIcon("d:"+File.separator+"icons"+File.separator+"file.gif")) ;
            JMenuBar menuBar = new JMenuBar() ;
            menuBar.add(menuFile) ;
    
            JMenuItem newItem = new JMenuItem("新建",new ImageIcon("d:"+File.separator+"icons"+File.separator+"new.gif")) ;
            JMenuItem openItem = new JMenuItem("打开",new ImageIcon("d:"+File.separator+"icons"+File.separator+"open.gif")) ;
            JMenuItem closeItem = new JMenuItem("关闭",new ImageIcon("d:"+File.separator+"icons"+File.separator+"close.gif")) ;
            JMenuItem exitItem = new JMenuItem("退出",new ImageIcon("d:"+File.separator+"icons"+File.separator+"exit.gif")) ;
    
            // 此时定义完了四个菜单的选项,定义完成之后,增加快捷键
            newItem.setMnemonic('N') ;
            openItem.setMnemonic('O') ;
            closeItem.setMnemonic('C') ;
            exitItem.setMnemonic('E') ;
    
            newItem.setAccelerator(KeyStroke.getKeyStroke('N',java.awt.Event.CTRL_MASK)) ;
            openItem.setAccelerator(KeyStroke.getKeyStroke('O',java.awt.Event.CTRL_MASK)) ;
            closeItem.setAccelerator(KeyStroke.getKeyStroke('C',java.awt.Event.ALT_MASK)) ;
            exitItem.setAccelerator(KeyStroke.getKeyStroke('E',java.awt.Event.ALT_MASK)) ;
    
            newItem.addActionListener(new ActionListener(){
                public void actionPerformed(ActionEvent e){
                    text.append("=== 选择了“新建”菜单项
    ") ;
                }
            }) ;
    
            openItem.addActionListener(new ActionListener(){
                public void actionPerformed(ActionEvent e){
                    text.append("=== 选择了“打开”菜单项
    ") ;
                }
            }) ;
    
            closeItem.addActionListener(new ActionListener(){
                public void actionPerformed(ActionEvent e){
                    text.append("=== 选择了“关闭”菜单项
    ") ;
                }
            }) ;
    
            exitItem.addActionListener(new ActionListener(){
                public void actionPerformed(ActionEvent e){
                    text.append("=== 选择了“退出”菜单项
    ") ;
                }
            }) ;
    
            menuFile.add(newItem) ;
            menuFile.add(openItem) ;
            menuFile.add(closeItem) ;
            menuFile.add(exitItem) ;
    
            frame.setJMenuBar(menuBar) ;    // 菜单是需要通过此方法增加的
            frame.addWindowListener(new WindowAdapter(){
                public void windowClosing(WindowEvent e){
                    System.exit(1) ;
                }
            }) ;
            frame.setVisible(true) ;
            frame.setSize(300,100) ;
            frame.setLocation(300,200) ;
        }
    }
  • 相关阅读:
    NserviceBus+rabbitmq
    c#调用Mysql带参数的存储过程
    datatable list 之前相互转换
    (gridcontrol等)通用导出excel z
    异步数据库查询 Z
    Gridview导出EXCEL(多页) z
    [自制简单操作系统] 4、计时器(线性表实现优化中断)
    [JAVA] 基于TCP的起重机运行模拟器
    [自制简单操作系统] 3、内存管理和窗口叠加
    [自制简单操作系统] 2、鼠标及键盘中断处理事件[PICGDTIDTFIFO]
  • 原文地址:https://www.cnblogs.com/tszr/p/12398938.html
Copyright © 2011-2022 走看看