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 ...
随机推荐
- linux phpstorm安装和激活方法
安装方法:http://www.linuxdiyf.com/linux/19328.html 激活方法:http://www.cnblogs.com/buyucoder/p/5291771.html ...
- C# 导出数据至 CSV
有时候将Excel的数据另存到csv文件会出现csv格式错误,以下示例实现将DataTable里面的数据直接保存到csv文件. System.Web.HttpRuntime.Cache["v ...
- HDU 5810 Balls and Boxes(盒子与球)
Balls and Boxes(盒子与球) Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/O ...
- mysql密码忘记或者不知道,怎么办?
运行cmd: 输入mysql回车,如果成功,将出现MySQL提示符 > 连接权限数据库>use mysql; (>是本来就有的提示符,别忘了最后的分号) 修改改密码:> upd ...
- CSS笔记(五)字体
CSS 字体属性定义文本的字体系列.大小.加粗.风格(如斜体)和变形(如小型大写字母). 参考:http://www.w3school.com.cn/css/css_font.asp CSS字体系列 ...
- s表达式和json表达式
s表达式 + 1 2 3普通表达式 1+2+3json表达式{ +:[1, 2, 3]}优点,一个运算符,无限个参数 s表达式 * (+ 1 2) 3普通表达式 1+(2*3)json表达式{ *:[ ...
- 草珊瑚的css基础
首先要了解如下概念: viewport,窗口大小,containing block,block formatting context,inline formatting context,dirctio ...
- SQL笔记(1)索引/触发器
--创建聚集索引 create clustered index ix_tbl_test_DocDate on tbl_test(DocDate) GO --创建非聚集索引 create nonclus ...
- Oracle 中取当前日期的上个月最后天和第一天
前一月 最后一天select last_day(add_months(sysdate,-1)) from dual; 2010-2-28 9:23:01; select t ...
- netty概念
Netty的ChannelFuture在Netty中的所有的I/O操作都是异步执行的,这就意味着任何一个I/O操作会立刻返回,不保证在调用结束的时候操作会执行完成.因此,会返回一个ChannelFut ...