JAVA GUI学习 - JMenuBar菜单条、JMenu菜单、JMenuItem菜单项组件学习
public class MenuBarKnow extends JFrame
{
JMenuBar jMenuBar; JMenu jMenuFile,jMenuEditor,jMenuAbout;
JMenu jMenuOpen; JMenuItem jMenuItemSave,jMenuItemEditor,jMenuItemExit;
JMenuItem jMenuItemWord,jMenuItemTxt; public MenuBarKnow()
{
init();
this.setLayout(null);
this.setSize(300, 400);
this.setTitle("你信不信,这个是menu!");
//设置setLocationRelativeTo应在setSize之后设置
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //当this设置layout为null时,可以根据需要进行菜单的定位
// this.add(jMenuBar);
// jMenuBar.setBounds(10, 100, 300, 30);
//加入菜单的第二种方法:
this.setJMenuBar(jMenuBar); jMenuBar.add(jMenuFile);jMenuBar.add(jMenuEditor);jMenuBar.add(jMenuAbout); jMenuOpen.add(jMenuItemTxt);jMenuOpen.add(jMenuItemWord); jMenuFile.add(jMenuOpen);
jMenuFile.add(jMenuItemSave); jMenuEditor.add(jMenuItemEditor); jMenuAbout.add(jMenuItemExit); addListener();
}
public void init()
{
jMenuBar = new JMenuBar(); jMenuAbout = new JMenu("系统");
jMenuEditor = new JMenu("编辑");
jMenuFile = new JMenu("文件");
jMenuOpen = new JMenu("打开文件类型"); jMenuItemEditor = new JMenuItem("开始编辑");
jMenuItemExit = new JMenuItem("退出系统");
jMenuItemSave = new JMenuItem("保存");
jMenuItemTxt = new JMenuItem("Txt文件");
jMenuItemWord = new JMenuItem("Word文件"); //设置Item快捷键,方式一
jMenuItemEditor.setAccelerator(KeyStroke.getKeyStroke('s'));
//设置Item快捷键,方式二
jMenuItemExit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,KeyEvent.ALT_MASK));
//设置Menu快捷键,这个快捷键必须和alt搭配使用
jMenuFile.setMnemonic('f');
/*****************************ToolBar的使用************************************/
//即:快捷按钮的使用,将JButton添加至JToolBar即可
}
public void addListener()
{
//设置Item的监听事件,以触发相应的事件发生
MenuItemActionListener menuItemActionListener = new MenuItemActionListener();
jMenuItemEditor.addActionListener(menuItemActionListener);
jMenuItemExit.addActionListener(menuItemActionListener);
jMenuItemSave.addActionListener(menuItemActionListener);
jMenuItemTxt.addActionListener(menuItemActionListener);
jMenuItemWord.addActionListener(menuItemActionListener);
}
public static void main(String[] args)
{
MenuBarKnow menuBarKnow = new MenuBarKnow();
menuBarKnow.setVisible(true);
} private class MenuItemActionListener implements ActionListener
{
@Override
public void actionPerformed(ActionEvent e)
{
JMenuItem jMenuItem = (JMenuItem) e.getSource();
JOptionPane.showMessageDialog(null, jMenuItem.getText());
}
}
}
JAVA GUI学习 - JMenuBar菜单条、JMenu菜单、JMenuItem菜单项组件学习的更多相关文章
- java Gui编程 事件监听机制
1. GUI编程引言 以前的学习当中,我们都使用的是命令交互方式: 例如:在DOS命令行中通过javac java命令启动程序. 软件的交互的方式: 1. 命令交互方式 图书管理系统 ...
- 初学java之菜单条,菜单,菜单项的设置
package project; import javax.swing.*; import java.awt.event.KeyEvent; import java.awt.event.InputEv ...
- JAVA/GUI程序之记事本
自上半年JAVA课程结束后,再也没有看过JAVA了,最近不是很忙,又简单的看了看,本博客纯属记录学习过程,请大神们别笑,其中错误是难免的,毕竟是新手写的博客.下面就进入我们的正题吧,复习GUI时,就想 ...
- Java基础之创建窗口——向窗口中添加菜单(Sketcher)
控制台程序. JMenuBar对象表示放在窗口顶部的菜单栏.可以为JMenuBar对象添加JMenu或JMenuItem对象,它们都显示在菜单栏上.JMenu对象是带有标签的菜单,单击就可以显示一列菜 ...
- java学习:AWT组件和事件处理的笔记(1)--菜单条,菜单,菜单项
菜单放在菜单条里,菜单项放在菜单里1.MenuBar 在java.awt包中,负责创建菜单条,即MenuBar的一个实例,便是一个菜单条. 在Frame类中的setMenuBar(Menu ...
- Java Swing界面编程(31)---菜单条:JMenu
package com.beyole.test; import javax.swing.JFrame; import javax.swing.JMenu; import javax.swing.JMe ...
- JAVA GUI学习 - JPopupMenu鼠标右键菜单组件学习
public class JPopmenuKnow { public void test() { //为表格添加鼠标右键菜单 JMenuItem jMenuItemFileInfo = new JMe ...
- JAVA GUI编程学习笔记目录
2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...
- Java GUI学习,贪吃蛇小游戏
JAVA GUI练习 贪吃蛇小游戏 前几天虽然生病了,但还是跟着狂神学习了GUI的方面,跟着练习了贪吃蛇的小项目,这里有狂神写的源码点我下载,还有我跟着敲的点我下载,嘿嘿,也就注释了下重要的地方,这方 ...
随机推荐
- Unity5UGUI 官方教程学习笔记(四)UI Image
Image Source image:源图片 需要显示的图片 Color:颜色 会与图片进行颜色的混合 Material:材质 Image Type: Simple 精灵只会延伸到适合Rec ...
- IIS发布网站后局域网其他用户不能访问问题(转)
如果本机能正常访问,而局域网其他用户不能访问,那么判断的结果很可能是防火墙问题. 解决方法: 既然问题出在Windows7或Windows Server 2008 R2的防火墙上,那么我们可以有以下两 ...
- nginx gzip on
# Gzip settings. gzip on; gzip_http_version 1.0;默认值是1.1 gzip_comp_level ; #压缩级别,1压缩比最小处理速度最快,9压缩比最大但 ...
- 全局变量,extern和static以及命名空间的区别
全局变量,extern和static以及命名空间的区别 全局变量只是在声明它的文件中有效,假如在另一个文件中声明定义了一个相同名称的全局变量,则在后续使用这两个变量的时候会产生名字上的冲 ...
- Windows上部署Redis
http://www.cnblogs.com/gaobing/p/5026136.html
- JSP page include taglib
page include taglib 语法:<%@ 指令名称 属性=值 属性=值 -%> ------------------- page 1.language 默认值java 2.ex ...
- 各种排序算法(C语言)
#include <stdlib.h> #include <stdio.h> void DataSwap(int* data1, int* data2) { int temp ...
- Eclips入门教程
1. 插件推荐 Eclipse默认情况下是一个纯净版的,所以功能简单,而开源IDE最为强大的莫过于各种插件,通过使用插件可以帮助我们减少大量编写代码的工作量,也帮助我们降低了编写代码的难度,所以懂得安 ...
- OSCache报错error while trying to flush writer
Struts2.3+spring3+hibernate3开发现在想在原有基础上使用 oscache提高性能,使用中发现问题例如:使用struts2标签<cache:cache time=&quo ...
- php保留小数格式的多种方法
php保留小数格式,定义小数格式,小数点,位数,小数位数: 方法一:(推荐)bcmul(1000.90,1,2);//两个数相乘1000.90*1, 保留两位小数点(无四舍五入)<返回strin ...