import java.awt.Container;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent; import javax.swing.ImageIcon;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.KeyStroke; //=================================================
// File Name : Jmenu_demo
//------------------------------------------------------------------------------
// Author : Common //主类
//Function : Jmenu_demo
public class Jmenu_demo { public static void main(String[] args) {
// TODO 自动生成的方法存根
JFrame frame = new JFrame("窗体"); //定义窗体
JTextArea text = new JTextArea(); //定义文本域
text.setEditable(true); //定义文本组件可编辑
frame.getContentPane().add(new JScrollPane(text)); //在面板中加入文本框及滚动条 JMenu menuFile = new JMenu("文件"); //定义JMenu组件
//定义显示图标
menuFile.setIcon(new ImageIcon("/home/common/software/database/123.jpg"));
JMenuBar menuBar = new JMenuBar(); //定义JMenu组件
//定义显示图标
JMenuItem newMenu = new JMenuItem("新建",new ImageIcon("/home/common/software/database/123.jpg"));
//定义显示图标
JMenuItem openMenu = new JMenuItem("打开",new ImageIcon("/home/common/software/database/123.jpg")); newMenu.setMnemonic('N');
openMenu.setMnemonic('O'); newMenu.setAccelerator(KeyStroke.getKeyStroke('N',java.awt.Event.CTRL_MASK));
openMenu.setAccelerator(KeyStroke.getKeyStroke('O',java.awt.Event.CTRL_MASK)); menuFile.add(newMenu); //加入菜单项
menuFile.addSeparator(); //加入分割线
menuFile.add(openMenu); //加入菜单项 menuBar.add(menuFile); //加入JMenu
frame.addWindowListener(new WindowAdapter(){ //加入动作监听
public void windowClosing(WindowEvent e) { //窗口关闭时触发,按下关闭按钮
// TODO 自动生成的方法存根
System.out.println("windowClosing-->窗口关闭");
System.exit(1);
}
});
frame.setJMenuBar(menuBar); //在窗体中加入JMenuBar组件
frame.setVisible(true);
frame.setLocation(300,200); //设置显示位置
frame.setSize(300, 180); } }

import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent; import javax.swing.ImageIcon;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.KeyStroke; //=================================================
// File Name : Jmenu_demo
//------------------------------------------------------------------------------
// Author : Common //主类
//Function : Jmenu_demo
public class Jmenu_demo { public static void main(String[] args) {
// TODO 自动生成的方法存根
JFrame frame = new JFrame("窗体"); //定义窗体
JTextArea text = new JTextArea(); //定义文本域
text.setEditable(true); //定义文本组件可编辑
frame.getContentPane().add(new JScrollPane(text)); //在面板中加入文本框及滚动条 JMenu menuFile = new JMenu("文件"); //定义JMenu组件
//定义显示图标
menuFile.setIcon(new ImageIcon("/home/common/software/database/123.jpg"));
JMenuBar menuBar = new JMenuBar(); //定义JMenu组件
//定义显示图标
JMenuItem newMenu = new JMenuItem("新建",new ImageIcon("/home/common/software/database/123.jpg"));
//定义显示图标
JMenuItem openMenu = new JMenuItem("打开",new ImageIcon("/home/common/software/database/123.jpg")); newMenu.setMnemonic('N');
openMenu.setMnemonic('O'); newMenu.setAccelerator(KeyStroke.getKeyStroke('N',java.awt.Event.CTRL_MASK));
openMenu.setAccelerator(KeyStroke.getKeyStroke('O',java.awt.Event.CTRL_MASK)); menuFile.add(newMenu); //加入菜单项
menuFile.addSeparator(); //加入分割线
menuFile.add(openMenu); //加入菜单项 menuBar.add(menuFile); //加入JMenu newMenu.addActionListener(new ActionListener() { @Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成的方法存根
text.append("选择了newMenu");
}
}); openMenu.addActionListener(new ActionListener() { @Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成的方法存根
text.append("选择了openMenu");
}
}); frame.addWindowListener(new WindowAdapter(){ //加入动作监听
public void windowClosing(WindowEvent e) { //窗口关闭时触发,按下关闭按钮
// TODO 自动生成的方法存根
System.out.println("windowClosing-->窗口关闭");
System.exit(1);
}
}); frame.setJMenuBar(menuBar); //在窗体中加入JMenuBar组件 frame.setVisible(true);
frame.setLocation(300,200); //设置显示位置
frame.setSize(300, 180); } }

Java——菜单组件的更多相关文章

  1. 【Java】详解菜单组件

    在这篇文章中,笔者会介绍Java图形界面编程中菜单组件的用法.关于菜单组件,因为java存在AWT编程和Swing编程,所以菜单组件也存在AWT菜单和Swing菜单.因为Swing组件使用的比较多,所 ...

  2. 编写Java程序,使用菜单组件制作一个记事本编辑器

    返回本章节 返回作业目录 需求说明: 使用菜单组件制作一个记事本编辑器 实现思路: 创建记事本菜单工具栏JMenuBar. 创建多个菜单条JMenu. 创建多个菜单项JMenuItem. 将菜单添加至 ...

  3. Java AWT组件开发和Swing界面编程

    一.AWT组件开发 1.AWT AWT是抽象窗口工具箱的缩写,它为编写图形用户界面提供了用户接口,通过这个接口就可以继承很多方法,省去了很多工作.AWT还能使应用程序更好地同用户进行交互. AWT中的 ...

  4. Java-GUI编程之菜单组件

    前面讲解了如果构建GUI界面,其实就是把一些GUI的组件,按照一定的布局放入到容器中展示就可以了.在实际开发中,除了主界面,还有一类比较重要的内容就是菜单相关组件,可以通过菜单相关组件很方便的使用特定 ...

  5. Android入门(七):Spinner下拉式菜单组件

    对于手机和平板电脑的应用程序来说,打字是非常不方便的操作方式,比较好的方式就是列出一组选项让用户挑选,这样就可以避免打字的麻烦.使用Spinner下拉菜单组件需要完成以下几个步骤: 1.建立选项列表, ...

  6. 在 Java EE 组件中使用 Camel Routes

    摘要:你可以通过集成 Camel 和 WildFly 应用服务器(使用 WildFly-Camel 子系统)在 Java EE 组件中开始使用 Apache Camel Routes. [编者按]作者 ...

  7. 菜单组件——axure线框图部件库介绍

    软件类的教程,我写不出长篇大论,这里面的都是基础的操作,希望初学者,根据一个功能演示,可以自己测试其他功能菜单的效果! Axure自带的菜单组件,我几乎没有用到过,做菜单导航,我第一时间想到的还是矩形 ...

  8. JS列表的下拉菜单组件(仿美化控件select)

    JS列表的下拉菜单组件(仿美化控件select) 2014-01-23 23:51 by 龙恩0707, 1101 阅读, 6 评论, 收藏, 编辑 今天是农历23 也是小年,在这祝福大家新年快乐!今 ...

  9. 13、Java菜单条、菜单、菜单项

    13.Java菜单条.菜单.菜单项 一般用Java做界面时,都得牵涉到菜单条.菜单.菜单项的设计.菜单项放在菜单里,菜单放在菜单条里,且其字体均可设置. 13.1.菜单条(Menubar) Frame ...

随机推荐

  1. SQL SERVER 2008向ORACLE 11G迁移示例

    来源于:http://www.cnblogs.com/hiizsk/ 由SQL SERVER 2008向ORACLE 11G迁移过程记录之一-表 使用Oracle Sql Developer将SQL ...

  2. 转 浅谈算法和数据结构: 十 平衡查找树之B树

    前面讲解了平衡查找树中的2-3树以及其实现红黑树.2-3树种,一个节点最多有2个key,而红黑树则使用染色的方式来标识这两个key. 维基百科对B树的定义为"在计算机科学中,B树(B-tre ...

  3. 求二叉树的宽度C语言版

    /*层次遍历二叉树,每一层遍历完成以后都重新插入特定的指针 (比如本例使用的特殊指针是数据元素为#,左右儿子为空的指针), 这样在每次访问到所指向数据为#的队列中的结点指针是就知道该指针是这层的末尾, ...

  4. Ajax工作原理(转)

    1.ajax技术的背景 不可否认,ajax技术的流行得益于google的大力推广,正是由于google earth.google suggest以及gmail等对ajax技术的广泛应用,催生了ajax ...

  5. 如何在linux Shell脚本里面把一个数组传递到awk内部进行处理

    前段时间和几位同事讨论过一个问题:Shell脚本里面怎样把一个数组传递到awk内部进行处理? 当时没有找到方法.前两天在QQ群里讨论awk的时候,无意间又聊起这个话题.机缘巧合之下找到一个思路,特此分 ...

  6. Web前端性能优化教程03:添加Expires头

    本文是Web前端性能优化系列文章中的第三篇,主要讲述添内容:加Expires头.完整教程可查看:Web前端性能优化 什么是Expires头? Expires存储的是一个用来控制缓存失效的日期.当浏览器 ...

  7. pycharm常用快捷键总结

    http://blog.csdn.net/pipisorry/article/details/39909057 在PyCharm /opt/pycharm-3.4.1/help目录下可以找到Refer ...

  8. SQL查询记录是否在另一个表中存在

    1.需求 create table ta(id int);create table tb(id int);insert into ta values(1);insert into ta values( ...

  9. Leetcode First Bad Version

    You are a product manager and currently leading a team to develop a new product. Unfortunately, the ...

  10. 【BZOJ-1923】外星千足虫 高斯消元 + xor方程组

    1923: [Sdoi2010]外星千足虫 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 766  Solved: 485[Submit][Status ...