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 ...
随机推荐
- Cheatsheet: 2013 10.09 ~ 10.23
Other 10 Basic Linux Networking and Monitoring Commands You Should Know A simple, portable yet effic ...
- SQL多条件查询安全高效比较
ALTER PROCEDURE _tmp @ID VARCHAR(50), @PN VARCHAR(50), @Type INT AS BEGIN /************************* ...
- CSS在线字体库,外部字体的引用方法
目录: 1:CSS家族五大字体 2:360和谷歌外部字体引用方法 3:谷歌外部字体引用方法详解 4:@font-face用法详解 一: {font-family:serif,sans-serif,fa ...
- [转]What you need to know about transimpedance amplifiers – part 1
Transimpedance amplifiers (TIAs) act as front-end amplifiers for optical sensors such as photodiodes ...
- 用t4模板和head.js进行css和js的版本控制
head.js 介绍 http://headjs.com/site/api/v1.00.html#load 原文http://www.cnblogs.com/wang2650/p/5102690.h ...
- 线程入门之优先级priority
package com.thread; /** * 优先级: * Thread.MAX_PRIORITY:最大优先级 10 * Thread.MIN_PRIORITY:最小优先级 1 * Thread ...
- 函数(def)
一.为什么要使用函数: 面向过程的编程在代码里有很多代码是可以重复利用的,如果使用面向过程编程会使代码显得纷繁复杂,不利于他人和自己日后的阅读.而在函数式编程里,则可以把每个可重复利用的功能封装在一个 ...
- 加载.properties方式
相对路径时注意:是相对项目(即包下)还是相对当前类(一般都是相对当前项目)(对于非class的资源文件eclipse编译时会直接放到bin目录下) 1.一般是从目录中加载:需要指明路径 2.另外就是通 ...
- TAROT.
/* * * */ #include<stdio.h> #include<stdlib.h> #include<time.h> int main() { int t ...
- mongoDB 类型参考表
$type操作符是基于BSON类型来检索集合中匹配的数据类型,并返回结果. MongoDB 中可以使用的类型如下表所示: 参考资料:http://www.runoob.com/mongodb/mong ...