java(课程设计之记事本界面部分代码公布)
代码:涉及记事本的一些界面......!!
/*
*java课程设计之记事本(coder @Gxjun)
* 编写一个记事本程序
* 要求:
* 用图形用户界面实现。
* 能实现编辑、保存、另存为、查找替换等功能。
* 提示:使用文件输入输出流。
*/
package project; import javax.swing.*;
import java.awt.*;
import java.awt.event.*; //引用类设置触发事件
import java.awt.event.KeyEvent;
import java.awt.event.InputEvent;
import static javax.swing.JFrame.*; //设置一个窗口类
class WindowMenu extends JFrame
{
JMenuBar Mymenubar ;
JMenu menu[] = new JMenu []; //有多个菜单,用数组表示
JMenuItem item[][] =new JMenuItem [][];
ActionListener mylistener; //声明一个触发响应事件
//构造函数
public WindowMenu() {}
public WindowMenu(String title , int x ,int y, int a, int b )
{
init( title ); //初始化窗口
setText(); //设置一个文本区域
setSize(a,b); //设置窗口大小
setLocation(x,y); //设置窗口位置
setVisible(true); //窗口是否可见
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); //注销窗口
} void init(String str) //设置一个初始化事件
{ int i;
setTitle(str);
Mymenubar = new JMenuBar(); //创建一个菜单条
menu[] = new JMenu("文件(F)");
menu[] = new JMenu("编辑(E)");
menu[] = new JMenu("格式(O)");
menu[] = new JMenu("查看(V)");
menu[] = new JMenu("帮助(H)");
for(i=; i<;i++)
Mymenubar.add(menu[i]);
item[] = new JMenuItem []; //项目条 数目
item[][] = new JMenuItem("新建(N)");
item[][].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_MASK)); //设置快捷键
item[][] = new JMenuItem("打开(O)");
item[][].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,InputEvent.CTRL_MASK));
item[][] = new JMenuItem("保存(S)");
item[][].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK));
item[][] = new JMenuItem("另存为(A)");
item[][].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A,InputEvent.CTRL_MASK));
item[][] = new JMenuItem("页面设置(U)");
item[][].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_U,InputEvent.CTRL_MASK));
item[][] = new JMenuItem("打印(P)");
item[][].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P,InputEvent.CTRL_MASK));
item[][] = new JMenuItem("退出(X)");
item[][].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,InputEvent.CTRL_MASK));
for(i=;i<;i++)
menu[].add(item[][i]);
//设置第二个版面的子菜单
item[] = new JMenuItem []; //单独对二维数组分配空间
item[][] = new JMenuItem("撤销(U)"); //创建窗口条目
item[][].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Z,InputEvent.CTRL_MASK)); //将键盘关键字绑定到窗口上
item[][]=new JMenuItem("剪切(T)");
item[][].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,InputEvent.CTRL_MASK));
item[][] = new JMenuItem("复制(C)");
item[][].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C ,InputEvent.CTRL_MASK));
item[][] =new JMenuItem("粘贴(P)");
item[][].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P ,InputEvent.CTRL_MASK));
item[][] = new JMenuItem("删除(L)");
item[][].setAccelerator(KeyStroke.getKeyStroke("Del")); // int 型强制转换成为 char 型
item[][] = new JMenuItem("查找(F)");
item[][].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F ,InputEvent.CTRL_MASK));
item[][] = new JMenuItem("查找下一个(N)");
item[][].setAccelerator(KeyStroke.getKeyStroke("F3"));
item[][] = new JMenuItem("替换(R)");
item[][].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_H,InputEvent.CTRL_MASK));
item[][] = new JMenuItem("转到(G)");
item[][].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_G , InputEvent.CTRL_MASK));
item[][] = new JMenuItem("全选(A)");
item[][].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A , InputEvent.CTRL_MASK));
item[][] = new JMenuItem("时间/日期(D)");
item[][].setAccelerator(KeyStroke.getKeyStroke("F5"));
for(i=;i<;i++)
menu[].add(item[][i]);
item[] = new JMenuItem [];
item[][]= new JMenuItem("自动换行(W)");
item[][].setAccelerator(KeyStroke.getKeyStroke("W"));
item[][] = new JMenuItem("字体(F)");
item[][].setAccelerator(KeyStroke.getKeyStroke("F"));
for(i=;i<;i++)
menu[].add(item[][i]);
item[] = new JMenuItem [];
item[][] = new JMenuItem("状态栏(s)");
menu[].add(item[][]);
item[] = new JMenuItem [];
item[][] = new JMenuItem("查看帮助(H)");
item[][].setAccelerator(KeyStroke.getKeyStroke("H"));
item[][] = new JMenuItem("关于记事本(A)");
item[][].setAccelerator(KeyStroke.getKeyStroke("A"));
for(i=;i<;i++)
menu[].add(item[][i]);
setJMenuBar(Mymenubar);
}
//放置一个文本框方法
void setText()
{
JTextArea myText;
myText = new JTextArea(,); //设置一个文本大大小
add(new JScrollPane(myText)); //将文本加载到窗口上去JScrollPane
//对文本的一个触发事件的封装
mylistener = new readerListen(); //调用触发一个自定义触发事件类,即即将要执行的动作
//myText.addActionListener(mylistener);
}
//放置响应触发事件 }
public class note_text {
public static void main(String args[])
{
WindowMenu mywind;
mywind= new WindowMenu("记事本",,,,);
}
}
java(课程设计之记事本界面部分代码公布)的更多相关文章
- Java课程设计——博客作业教学数据分析系统(201521123084 林正晟)
#课程设计--博客作业教学数据分析系统(201521123084 林正晟) 1.团队课程设计博客链接 博客作业教学数据分析系统 2.个人负责模块或任务说明 学生登陆界面的前端实现和与数据库的连接 学生 ...
- java课程设计--We Talk(201521123061)
java课程设计--We Talk(201521123061) 团队博客链接:http://www.cnblogs.com/slickghost/ 数据库 一.通过Dao模式建立与数据库的连接 1.数 ...
- Java 课程设计 "Give it up"小游戏(团队)
JAVA课程设计 "永不言弃"小游戏(From :Niverse) 通过Swing技术创建游戏的登陆注册界面,使用mySQL数据库技术完成用户的各项信息保存和游戏完成后的成绩保存. ...
- Java课程设计----仿Windows标准型计算器
JAVA课程设计 仿Windows标准型计算器(By Yanboooooooo) 一.团队介绍: 连燕波[组长]:网络1513学生. 张文博[组员]:网络1513学生. 二.项目git地址 码云项目地 ...
- Java课程设计—象棋
1. 团队名称.团队成员介绍 团队名称:WY 团队成员: 吴慧婷[组长] 201521123094 网络1514 姚佳希 201521123042 网络1512 2 项目git地址 Java课程设计 ...
- Java课程设计——猜数游戏(201521123111 陈伟泽)
Java课程设计--猜数游戏(201521123111 陈伟泽) 1.团队课程设计博客链接 博客作业--猜数游戏 2.个人负责模块或任务说明 Answer:一些基础界面的构造,排行榜的构造,用文件录入 ...
- java课程设计--猜数字(团队博客)
java课程设计--猜数字(团队博客) 1.团队名称以及团队成员介绍 团队名称:cz 团队成员:陈伟泽,詹昌锦 团队照片: 2.项目git地址 http://git.oschina.net/Devil ...
- JAVA课程设计——“小羊吃蓝莓”小游戏
JAVA课程设计--"小羊吃蓝莓"小游戏 1. 团队课程设计博客链接 http://www.cnblogs.com/HXY071/p/7061216.html 2. 个人负责模块或 ...
- JAVA课程设计——团队博客
JAVA课程设计--团队博客 1. 团队名称.团队成员介绍(需要有照片) 团队名称:"小羊吃蓝莓"小游戏 团队成员介绍: 成员 班级 学号 廖怡洁 网络1513 201521123 ...
随机推荐
- VS2013自动注释插件
在程序编写的时候,你是否见过这种写法?整个项目每个cs文件头部都包含一个,版权,版本等信息的注释头? 类似这个类文件: /*************************************** ...
- [UVa1213]Sum of Different Primes(递推,01背包)
题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem ...
- JQuery 选中Radio
<tr> <td> <input type="radio" name="rdb" value="启用" che ...
- hibernate缓存说明
hibernate缓存说明: 1.一级缓存(session级别缓存) 一级缓存,不是用来提升性能,是用来处理事务的 2.二级缓存(sessionFactory级别缓存): 二级缓存,对 ...
- Linux Shell脚本攻略 读书笔记
Linux Shell脚本攻略 读书笔记 这是一本小书,总共253页,但内容却很丰富,书中的示例小巧而实用,对我这样总是在shell门前徘徊的人来说真是如获至宝:最有价值的当属文本处理,对这块我单独整 ...
- 关于line box,inline box,line-height,vertical-align之间的关系
1.content area 围绕着文字的一种box,高度由font-size和font-family决定.在chrome控制器里,你用鼠标志向某个内敛元素,显示的高度值. 2.inline box的 ...
- 关于<![CDATA[]]
术语 CDATA 指的是不应由 XML 解析器进行解析的文本数据(Unparsed Character Data). 在 XML 元素中,"<" 和 "&& ...
- SQL 调优专题总结
oracle 的优化器: oracle 有两种优化器:基于规则的优化器(rbo/rule based optimizer)和基于代价的优化器(cbo/cost based optimizer). 有时 ...
- poj1434Fill the Cisterns!(二分)
链接 题目说给你n个水箱,初始是没有水的,每个的高低位置可能不同,给了你初始的水箱底部所处的水平线位置,问给你V体积水时,水的水平线位置. 直接二分位置p,对于每一个底部低于水平线位置的水箱,里面的水 ...
- poj1066Treasure Hunt(线段相交)
链接 很纠结的找到了所有线段的中点,又很纠结的找到了哪些中点可以直接相连,最后bfs一下求出了最短路.. #include <iostream> #include<cstdio> ...