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) ;
        }
    }
  • 相关阅读:
    【华为云技术分享】【我的物联网成长记19】物联网智慧路灯应用代码解析(上)
    【华为云技术分享】跟唐老师学习云网络
    【华为云技术分享】数据管理服务DAS 之 数据库自动化运维功能展播4:慢SQL
    【华为云技术分享】初识MySQL隔离级别
    【华为云技术分享】DAS文件上传组件的进化
    【华为云技术分享】为什么越来越多企业正在往ARM平台迁移?
    【华为云技术分享】云原生数据库三驾马车之TaurusDB
    【华为云技术分享】云图说|超赞!终于有人把云存储“三兄弟”讲清楚了!
    Search for a Range
    Search in Rotated Sorted Array
  • 原文地址:https://www.cnblogs.com/tszr/p/12398938.html
Copyright © 2011-2022 走看看