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);
}
}

Java学习——Applet菜单的更多相关文章
- Java学习——Applet画8个同心圆
import java.awt.*; import java.applet.*; public class GUI3 extends Applet{ public void paint(Graphic ...
- Java学习——Applet写字符串(调字体)
import java.awt.*; import java.applet.Applet; public class GUI2 extends Applet{ public void paint(Gr ...
- Java 学习(20):Java Applet 基础 & Java 文档注释
-- Java Applet 基础 -- Java 文档注释 Java Applet 基础 Applet 是一种 Java 程序.它一般运行在支持 Java 的 Web 浏览器内.因为它有完整的 Ja ...
- Java学习-038-JavaWeb_007 -- JSP 动作标识 - plugin
plugin 动作时用来在 JSP 页面中加载 Java Applet 或者 JavaBean 组件,语法格式如下所示: <jsp:plugin type="bean|applet&q ...
- JAVA学习之Ecplise IDE 使用技巧(2)第二章:键盘小快手,代码辅助
上一篇:JAVA学习之Ecplise IDE 使用技巧(1)第一章:我的地盘我做主,工作空间 第二章:键盘小快手,代码辅助 内容包括: 第一:显示行号 如何设置行号:Ecplice菜单Windows& ...
- 转:Java学习路线图
作者: nuanyangyang 标 题: Java学习路线图(整理中,欢迎纠正) 发信站: 北邮人论坛 (Mon Aug 11 19:28:16 2014), 站内 [以下肯定是不完整的列表, ...
- Java学习笔记--Swing用户界面组件
很多与AWT类似. 事件处理参考:Java学习笔记--AWT事件处理 1.设计模式: 模型:存储内容视图:显示内容控制器:处理用户输入· 2. 文本输入常用组件 2.1 文本域: JLabel lab ...
- 【java学习】Servlet简单的表单程序(一)
此文用于java学习,在此小记. 在此小Demo中使用到了Servlet,所以有必要了解一下Servlet的相关知识.(Servlet的相关知识摘抄自http://blog.csdn.net/jiuq ...
- Java 学习文章汇总
目前JAVA可以说是产业界和学术界最热门的语言,许多人都很急切想把JAVA学好. 但学习是需要步骤的,除非像电影中演的那样,能够把需要的专业技巧下载到脑海:主角只花了几秒下载资料,就马上具备飞行员的技 ...
随机推荐
- strchr与sscanf
strchr(s,',')返回字符串s中从左往右第一个字符's'的指针: sscanf(输入的字符或字符串,“%格式符”,存储值):
- 微处理器CPU 50年
CPU50年 ===电子管时期1912年:美国青年发明家德.福雷斯特(L.De Forest)在帕洛阿托小镇首次发现了电子管的放大作用.1946年:地球上第一台电子数字式计算机(ENIAC(埃尼阿克) ...
- 对中文进行MD5加密的注意事项(Java版,编码问题)
http://blog.csdn.net/tongdao/article/details/20690187 在工作中需要和第三方进行Http通信,在通信内容中有几个参数涉及到了中文.自己在进行MD5加 ...
- 【BZOJ1492】【NOI2007】货币兑换
我果然不会斜率优化 原题: 小Y最近在一家金券交易所工作.该金券交易所只发行交易两种金券:A纪念券(以下简称A券)和 B纪念券(以下 简称B券).每个持有金券的顾客都有一个自己的帐户.金券的数目可以是 ...
- centos7和linux防火墙配置入门
linux部分 iptables -L 列出当前防火墙策略 iptables -F 清空防火墙策略 iptables -P INPUT DROP 默认设置丢弃进来的流量包(-p指默认策 ...
- win10安装系统后,提示initializing and establishing link无法启动系统
使用老毛桃安装系统前,先对硬盘进行分区,分区时选择mbr格式分区就可以了,安装好系统重启进入系统时将boot安全启动关闭,模式改为legal(那个单词大概长这样,不记得了,反正那里就两个模式,可以都试 ...
- Gravitational Teleport docker-compose组件独立部署运行
Gravitational Teleport 可以作为堡垒机进行使用,上次写过一个all in one 的,这次参考官方 的配置运行一个proxy node auth 分离的应用 备注: 基于dock ...
- 在sorted range上的操作(includes,set_union,set_intersection,set_difference)
includes //版本一:用operator <比较元素 template <class InputerIterator1,class InputerIterator2> boo ...
- adb command
- [转]web.xml中<url-pattern>详解
标签<url-pattern><url-pattern>是我们用Servlet做Web项目时需要经常配置的标签,例: <servlet> <servlet-n ...