Java——菜单组件

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——菜单组件的更多相关文章
- 【Java】详解菜单组件
在这篇文章中,笔者会介绍Java图形界面编程中菜单组件的用法.关于菜单组件,因为java存在AWT编程和Swing编程,所以菜单组件也存在AWT菜单和Swing菜单.因为Swing组件使用的比较多,所 ...
- 编写Java程序,使用菜单组件制作一个记事本编辑器
返回本章节 返回作业目录 需求说明: 使用菜单组件制作一个记事本编辑器 实现思路: 创建记事本菜单工具栏JMenuBar. 创建多个菜单条JMenu. 创建多个菜单项JMenuItem. 将菜单添加至 ...
- Java AWT组件开发和Swing界面编程
一.AWT组件开发 1.AWT AWT是抽象窗口工具箱的缩写,它为编写图形用户界面提供了用户接口,通过这个接口就可以继承很多方法,省去了很多工作.AWT还能使应用程序更好地同用户进行交互. AWT中的 ...
- Java-GUI编程之菜单组件
前面讲解了如果构建GUI界面,其实就是把一些GUI的组件,按照一定的布局放入到容器中展示就可以了.在实际开发中,除了主界面,还有一类比较重要的内容就是菜单相关组件,可以通过菜单相关组件很方便的使用特定 ...
- Android入门(七):Spinner下拉式菜单组件
对于手机和平板电脑的应用程序来说,打字是非常不方便的操作方式,比较好的方式就是列出一组选项让用户挑选,这样就可以避免打字的麻烦.使用Spinner下拉菜单组件需要完成以下几个步骤: 1.建立选项列表, ...
- 在 Java EE 组件中使用 Camel Routes
摘要:你可以通过集成 Camel 和 WildFly 应用服务器(使用 WildFly-Camel 子系统)在 Java EE 组件中开始使用 Apache Camel Routes. [编者按]作者 ...
- 菜单组件——axure线框图部件库介绍
软件类的教程,我写不出长篇大论,这里面的都是基础的操作,希望初学者,根据一个功能演示,可以自己测试其他功能菜单的效果! Axure自带的菜单组件,我几乎没有用到过,做菜单导航,我第一时间想到的还是矩形 ...
- JS列表的下拉菜单组件(仿美化控件select)
JS列表的下拉菜单组件(仿美化控件select) 2014-01-23 23:51 by 龙恩0707, 1101 阅读, 6 评论, 收藏, 编辑 今天是农历23 也是小年,在这祝福大家新年快乐!今 ...
- 13、Java菜单条、菜单、菜单项
13.Java菜单条.菜单.菜单项 一般用Java做界面时,都得牵涉到菜单条.菜单.菜单项的设计.菜单项放在菜单里,菜单放在菜单条里,且其字体均可设置. 13.1.菜单条(Menubar) Frame ...
随机推荐
- JVM学习之jstat使用方法
Jstat是JDK自带的一个轻量级工具,主要用JVM内建的指令对java应用程序的资源和性能进行实时的监控. 基本语法 jstat <option> [-t] [-h] <pid&g ...
- [转]js中confirm实现执行操作前弹出确认框的方法
原文地址:http://www.jb51.net/article/56986.htm 本文实例讲述了js中confirm实现执行操作前弹出确认框的方法.分享给大家供大家参考.具体实现方法如下: 现在在 ...
- dijkstra 最短路算法
最朴素的做法o(V*V/2+2E)~O(V^2)#include<iostream>using namespace std;#include<vector>#include&l ...
- Bean 的作用域
•在 Spring 中, 可以在 <bean> 元素的 scope 属性里设置 Bean 的作用域. 默认情况下, Spring 只为每个在 IOC 容器里声明的 Bean 创建唯一一个实 ...
- jQuery打印插件jqprint
码][JavaScript]代码 跳至 [1] [全屏预览] ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 ...
- gene_abundance_estimation
/home/liuhui/bin/trinityrnaseq_r20140413p1/util/support_scripts/get_Trinity_gene_to_trans_map.pl Tri ...
- 1.python算法之汉诺塔
代码如下: #!/usr/bin/env python # encoding: utf-8 """ @author: 侠之大者kamil @file: 汉诺塔.py @t ...
- BZOJ1012 [JSOI2008]最大数maxnumber
本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000 作者博客:http://www.cnblogs.com/ljh2000-jump/ ...
- 研究dotnet动态语言IronPython(对应Java的Groovy)
Java的标配动态语言Groovy,两者搭配可以说是完美!大规模运用的项目,如:Jenkins,通过动态语言可以弥补先天系统缺陷的bug,再者就是加强自己的业务逻辑等. 那么换过dotnet上,对应的 ...
- Uva1624 Knots
极其鬼畜的题. 初见根本没有思路. 二见根本没有思路. …… 多年(并不)之后突然想到,也许可以用链表模拟. 先用链表把每一个节点串起来,并对有覆盖的地方进行标记. 模拟解锁操作,如果一个节点和它所覆 ...