记事本程序说明书

记事本程序说明书
记事本程序说明书

*******************

实践教学

*******************

兰州理工大学

计算机与通信学院

2012年秋季学期

Java 课程设计

题目:记事本程序

专业班级:计算机科学与技术四班

姓名:杨大武

学号:10240426

指导教师:李睿

成绩:____________________

一、摘要 (1)

二、前言 (4)

三、设计分析 (5)

3.1系统概述 (5)

3.2系统运行环境 (5)

3.3功能需求描述 (5)

四、总体设计 (5)

五、系统的实现 (6)

5.1主界面包括 (6)

5.2完成图5-1程序代码 (8)

六、操作方法与试验结果 (8)

6.1 操作方法 (8)

6.2复制粘贴功能 (9)

6.3实验结果 (10)

七、设计体会 (10)

八、致谢 (11)

九、参考文献 (12)

附录 (13)

一、摘要

随着科学技术的快速发展,计算机程序设计早已成为了趋势,JAVA是计算机专业的核心课程,是计算机的算法理论基础和软件设计的基础。JAVA是实践性很强的课程。课程设计是加强实践能力的一个强有力手段。要求掌握JAVA的应用、编写、上机调试的基本方法。本次课程设计实现了一个简单记事本系统所需的功能,以及具体的设计步骤。该报告中的程序是使用Java程序编写,能够进行输入文字操作,并具有新建文件,打开文件,能实现编辑、保存、另存为、查找替换等功能等功能。该程序主要用到了Java swing和事件监听等

在本程序设计中,因为需要开发的是记事本程序,规模较小,内容较少,所以选择了适合初学者使用的JCreator开发工具。

关键词:java , Java swing,事件监听,简单记事本

二、前言

传统记事本存在各种各样的瑕疵或问题:有的文件体积相对于一般文字编辑来说太大;有的功能太繁杂,使初级使用者一时难以掌握。然而,本系程序对以上缺点设计,也是科学化、正规化的管理,与世界接轨的重要条件。

现在网络上各种文档编辑器数不胜数,有EmEditor ,UEStudio ,GridinSoft Notepad ,Notepad++,win32pad ,SkimEdit,UniRed, xint 。功能也是应有尽有,有能改变字体的,有能改变文字颜色的。但是,这些软件又存在各种各样的瑕疵或问题:有的文件体积相对于一般文字编辑来说太大;有的功能太繁杂,使初级使用者一时难以掌握。从日常应用方面来说,一个文本编辑器只需一些简单实用的功能就够了。本程序设计就是依照这样一种使用需要设计了一个简单的记事本程序。

三、设计分析

3.1系统概述

记事本主要是对文字进行编辑处理的软件。能进行新建、打开、保存等功能;并且能运用剪贴、复制、粘贴、清除功能,对文字更方便的录入。另外还可以根据用户的需要查找相应的文字,实现编辑功能。

3.2系统运行环境

●操作系统:Windows XP

●开发语言: JAVA

●开发工具:JCreatorPro

3.3功能需求描述

由于记事本是一套简单的文本编辑器。要求记事本不但要具备完善的编辑、方便的性能,还要提供更简便的操作。这就要求设计人员在编辑过程当中尽可能的考虑到。包括以下内容:

1、对文本进行编辑;

2、用户根据不同的权限可对文本进行添加、删除、修改等操作;

3、对记事本进行各种编辑(精确、简单);

四、总体设计

记事本采用现有的编辑,简单的记事本编辑器,充分利用大家现有的编辑,减少大家的时间,提高大家对记事本的熟练。

记事本就具备编辑功能,可以及时根据大家需求进行新建、保存操作。

记事本筐架图4-1

五、系统的实现

5.1主界面包括

文件、编辑、查找、帮助操作界面子目录包括 复制、粘贴、新建、查找等,如图3-1显示。

图5-1.1

记事本小程序

文件 编辑 查找 帮助

新建

保存

打开

复制

粘贴

清除

查 找

查找 替换

帮助

图5-1.2

图5-1.3

图5-1.4

5.2完成图5-1程序代码

见附录

六、操作方法与试验结果

6.1 操作方法

将需的文字录入该文本框,然后进行该程序的功能测试,以《我住在麦子里》为例。我们要实现文本框的查找功能。如查找文中的“大地”,将鼠标移动到查找后单击,然后输入“大地”。

图6-1.1

6.2复制粘贴功能

选中复制内容,点击复制,然后在需要的位置点击粘贴。

图6-1.2

6.3实验结果

输入要查找的内容时,点击“查找”,程序就能找出文中包含“大地”的这句。并将其置于页顶。实现了文字的查找功能。

对于所复制的内容将光标移动到相应的位置,然后点击粘贴,之后就实现了文字的复制粘贴功能。

七、设计体会

通过设计记事本小程序,了解了实现该类型程序的方法,掌握了需要用到的代码、类、算法等。有些小问题还是没有掌握,比如建立清晰的类层次、分析和定义各个类,每个类中要有各自的属性和方法、面向对象的机制(继承、派生及多态性)来实现系统功能。

我将在今后的学习过程中尽量完善自己的编程水平,使自己能够尽快的适应社会工作的需要,以求做到最好。

八、致谢

在这里感谢我的指导老师王燕老师和李睿老师,她们在我的课程设计过程中提出了指导性的方案和架构:在定义类各类和分析各类的属性和方法上帮我理清了详细的类层次;在系统整体设计时要求用面向对象机制并运用继承、派生和多态性;并在设计过程中不断指引我发现错误,改正错误。并教育我要思路开阔,发散思维,考虑问题全面细致,并指引我阅读相关的资料和书籍,不断完善自己的程序,使我的课程设计能够顺利完成。

九、参考文献

[1]曲朝阳,杨杰明等.Java程序设计. 北京: 清华大学出版社,2008.10

[2]耿祥以,张跃平.Java大学生实用教程. 北京: 电子工业出版社,2012.6

[3]明日科技.Java经典编程.北京:清华大学出版社,2012.10

[4]李尊朝,苏军.Java语言程序设计.北京:中国铁道出版社,2004.2

[5]王博. 面向对象的建模、设计技术与方法. 北京希望电脑公司,1990.

附录

import java.awt.*;

import java.awt.event.*;

import java.io.*;

import java.awt.datatransfer.*;

class MyMenuBar extends MenuBar{

public MyMenuBar(Frame parent){

parent.setMenuBar(this);

}

public void addMenus(String [] menus){

for(int i=0;i

add(new Menu(menus[i]));

}

public void addMenuItems(int menuNumber,String[] items){

for(int i=0;i

if(items[i]!=null)

getMenu(menuNumber).add(new MenuItem(items[i])); else getMenu(menuNumber).addSeparator();

}

}

public void addActionListener(ActionListener al){

for(int i=0;i

for(int j=0;j

getMenu(i).getItem(j).addActionListener(al);

}

}

class MyFile{

private FileDialog fDlg;

public MyFile(Frame parent){

fDlg=new FileDialog(parent,"",FileDialog.LOAD);

}

private String getPath(){

return fDlg.getDirectory()+"\\"+fDlg.getFile();

}

public String getData() throws IOException{

fDlg.setTitle("打开");

fDlg.setMode(FileDialog.LOAD);

fDlg.setVisible(true);

BufferedReader br=new BufferedReader(new FileReader(getPath()));

StringBuffer sb=new StringBuffer();

String aline;

while((aline=br.readLine())!=null)

sb.append(aline+'\n');

br.close();

return sb.toString();

}

public void setData(String data) throws IOException{

fDlg.setTitle("保存");

fDlg.setMode(FileDialog.SAVE);

fDlg.setVisible(true);

BufferedWriter bw=new BufferedWriter(new FileWriter(getPath()));

bw.write(data);

bw.close();

}

}

class MyClipboard{

private Clipboard cb;

public MyClipboard(){

cb=Toolkit.getDefaultToolkit().getSystemClipboard();

}

public void setData(String data){

cb.setContents(new StringSelection(data),null);

}

public String getData(){

Transferable content=cb.getContents(null);

try{

return (String) content.getTransferData(DataFlavor.stringFlavor);

//DataFlavor.stringFlavor会将剪贴板中的字符串转换成Unicode码形式的String对象。

//DataFlavor类是与存储在剪贴板上的数据的形式有关的类。

}catch(Exception ue){}

return null;

}

}

class MyFindDialog extends Dialog implements ActionListener{

private Label lFind=new Label("查找字符串");

private Label lReplace=new Label("替换字符串");

private TextField tFind=new TextField(10);

private TextField tReplace=new TextField(10);

private Button bFind=new Button("查找");

private Button bReplace=new Button("替换");

private TextArea ta;

public MyFindDialog(Frame owner,TextArea ta){

super(owner,"查找",false);

this.ta=ta;

setLayout(null);

lFind.setBounds(10,30,80,20);

lReplace.setBounds(10,70,80,20);

tFind.setBounds(90,30,90,20);

tReplace.setBounds(90,70,90,20);

bFind.setBounds(190,30,80,20);

bReplace.setBounds(190,70,80,20);

add(lFind);

add(tFind);

add(bFind);

add(lReplace);

add(tReplace);

add(bReplace);

setResizable(false);

bFind.addActionListener(this);

bReplace.addActionListener(this);

addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){

MyFindDialog.this.dispose();

}

});

}//构造函数结束

public void showFind(){

setTitle("查找");

setSize(280,60);

setVisible(true);

}

public void showReplace(){

setTitle("查找替换");

setSize(280,110);

setVisible(true);

}

private void find(){

String text=ta.getText();

String str=tFind.getText();

int end=text.length();

int len=str.length();

int start=ta.getSelectionEnd();

if(start==end) start=0;

for(;start<=end-len;start++){

if(text.substring(start,start+len).equals(str)){

ta.setSelectionStart(start);

ta.setSelectionEnd(start+len);

return;

}

}

//若找不到待查字符串,则将光标置于末尾

ta.setSelectionStart(end);

ta.setSelectionEnd(end);

}

public Button getBFind() {

return bFind;

}

private void replace(){

String str=tReplace.getText();

if(ta.getSelectedText().equals(tFind.getText()))

ta.replaceRange(str,ta.getSelectionStart(),ta.getSelectionEnd());

else find();

}

public void actionPerformed(ActionEvent e) {

if(e.getSource()==bFind)

find();

else if(e.getSource()==bReplace)

replace();

}

}

class MyMemo extends Frame implements ActionListener{

private TextArea editor=new TextArea(); //可编辑的TextArea

private MyFile mf=new MyFile(this);//MyFile对象

private MyClipboard cb=new MyClipboard();

private MyFindDialog findDlg=new MyFindDialog(this,editor);

public MyMemo(String title){ //构造函数

super(title);

MyMenuBar mb=new MyMenuBar(this);

//添加需要的菜单及菜单项

mb.addMenus(new String[]{"文件","编辑","查找","帮助"});

mb.addMenuItems(0,new String[]{"新建","打开","保存",null,"全选"});

mb.addMenuItems(1,new String[]{"剪贴","复制","粘贴","清除",null,"全选"});

mb.addMenuItems(2,new String[]{"查找",null,"查找替换"});

mb.addMenuItems(3,new String[]{"我的记事本信息"});

add(editor); //为菜单项注册动作时间监听器

mb.addActionListener(this);

addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){

MyMemo.this.dispose();

}

}); //分号不能忘了

} //构造函数完

public void actionPerformed(ActionEvent e){

String selected=e.getActionCommand(); //获取菜单项标题

if(selected.equals("新建"))

editor.setText("");

else if(selected.equals("打开")){

try{

editor.setText(mf.getData());

}catch(IOException ie){}

}

else if(selected.equals("保存"))

{

try{

mf.setData(editor.getText());

}catch(IOException ie){}

}

else if(selected.equals("退出"))

{

dispose();

}

else if(selected.equals("剪贴")){

//将选中的字符串复制到剪贴板中并清除字符串

cb.setData(editor.getSelectedText());

editor.replaceRange("",editor.getSelectionStart(),editor.getSelectionEnd());

}

else if(selected.equals("复制")){

cb.setData(editor.getSelectedText());

}

else if(selected.equals("粘贴")){

String str=cb.getData();

editor.replaceRange(str,editor.getSelectionStart(),editor.getSelectionEnd());

//粘贴在光标位置

}

else if(selected.equals("清除")){

editor.replaceRange("",editor.getSelectionStart(),editor.getSelectionEnd());

}

else if(selected.equals("全选")){

editor.setSelectionStart(0);

editor.setSelectionEnd(editor.getText().length());

}

else if(selected.equals("查找")){

findDlg.showFind();

}

else if(selected.equals("查找替换"))

{

findDlg.showReplace();

}

}

public static void main(String[] args)

{

MyMemo memo=new MyMemo("记事本");

memo.setSize(650,450);

memo.setVisible(true);

}

}

用delphi编写的记事本代码.

unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, StdCtrls, ComCtrls, ExtCtrls, ToolWin, ImgList; type TForm1 = class(TForm MainMenu1: TMainMenu; RichEdit1: TRichEdit; OpenDialog1: TOpenDialog; SaveDialog1: TSaveDialog; N1: TMenuItem; N2: TMenuItem; N3: TMenuItem; FontDialog1: TFontDialog; N4: TMenuItem; N5: TMenuItem; N6: TMenuItem; N7: TMenuItem; N8: TMenuItem; N9: TMenuItem; N10: TMenuItem; N11: TMenuItem; N12: TMenuItem; N13: TMenuItem; N14: TMenuItem; N15: TMenuItem; N16: TMenuItem; N17: TMenuItem; N18: TMenuItem; N19: TMenuItem; N20: TMenuItem; PopupMenu1: TPopupMenu; FindDialog1: TFindDialog; N21: TMenuItem; PrintDialog1: TPrintDialog; N22: TMenuItem; N23: TMenuItem; N24: TMenuItem; N25: TMenuItem; N26: TMenuItem; N27: TMenuItem; N28: TMenuItem; N31: TMenuItem; N32: TMenuItem; S1: TMenuItem; Timer1: TTimer; StatusBar2: TStatusBar; ToolBar1: TToolBar; ToolButton1: TToolButton; ToolButton2: TToolButton; ToolButton3: TToolButton; ToolButton4: TToolButton; ToolButton5: TToolButton; ToolButton6: TToolButton; ToolButton7: TToolButton; ToolButton8: TToolButton; ToolButton9: TToolButton; ToolButton10: TToolButton; ToolButton11: TToolButton; ToolButton12: TToolButton; ToolButton13: TToolButton; ImageList1: TImageList; procedure N2Click(Sender: TObject; procedure N3Click(Sender: TObject; procedure N7Click(Sender: TObject; procedure N8Click(Sender: TObject; procedure N9Click(Sender: TObject; procedure N14Click(Sender: TObject; procedure N21Click(Sender: TObject; procedure N16Click(Sender: TObject; procedure N17Click(Sender: TObject; procedure N18Click(Sender: TObject; procedure N12Click(Sender: TObject; procedure N20Click(Sender: TObject; procedure N6Click(Sender: TObject; procedure S1Click(Sender: TObject; procedure FindDialog1Find(Sender: TObject; procedure Timer1Timer(Sender: TObject; procedure N24Click(Sender: TObject; procedure N25Click(Sender: TObject; procedure N26Click(Sender: TObject; procedure N27Click(Sender: TObject; procedure N28Click(Sender: TObject; procedure RichEdit1MouseMove(Sender: TObject; Shift:

用记事本编写整人小程序

不需要任何编程基础,不需要任何编程软件,只需使用电脑里自带的记事本软件就可以轻松编写出整人的小程序,甚至是病毒。。。。。。 首先,单击右键,新建一个文本文档,输入:msgbox"你是猪!" 然后,点击文件->另存为->保存类型:所有文件->文件名xxxx.vbs,名字随便起,但一定要记得把后缀名改为 .vbs。

然后打开刚保存的xxxx.vbs

哈哈,很好玩吧,双引号里的内容”你是猪!”可以随意更改,但双引号一定要用英文输入法来写。嗯,下面正式开始整人。。。。。。 按照前面说的,在记事本上输入如下图,并保存为55.vbs。

其中wscript.Sleep 500为停留500毫秒,可随便更改 下面这段代码就是一个启动关机程序的东东,300这个数是指300秒倒计时,这个数字也可以随便改,这段代码也可以独立保存出来作为一个关机程序 dim WSHshell set WSHshell = wscript.createobject("wscript.shell") WSHshell.Run "cmd.exe /c shutdown -s -t 300" 打开这个文件,如果你点击“是”,你就会进入一个死循环中,就是不断地弹出对话框。解决方法是按下Alt+Ctrl+Delete键,选择“进程”,把wscript.exe结束掉。如果点击“否”,

则进入关机倒计时,解决方法是点击“开始”->“运行”,在对话框里输入shutdown -a ,再点击“确定”即可。 最后嘛,把这文件创建桌面快捷方式,然后把图标换了,换成QQ什么的,你懂的,呵呵。。。。。。当然,这种VBS编程还有很多好玩的地方,比如病毒,我也收藏有几个,由于我是一等一的良好市民,就不写上来了。 最后再送上一个程序: dim a do a=inputbox("输入123,否则关机。") if a="123" then msgbox" 很遗憾,你中招了,这是整人程序,你就等着关机吧" WSHshell.Run "cmd.exe /c shutdown -s -t 300" wscript.sleep 1000 exit do else msgbox"乖点,输入123" end if loop

java课设记事本说明书

******************* 实践教学 ******************* 兰州理工大学 计算机与通信学院 2012年秋季学期 Java 课程设计 题目:记事本系统设计 专业班级: 姓名: 学号: 指导教师: 成绩:

目录 摘要 (1) 序言 (2) 正文 (3) 1.系统设计与分析 (3) 2.详细设计 (3) 3.系统测试 (14) 4.软件使用说明书 (17) 设计总结 (18) 参考文献 (19) 致谢 (20) 附录(程序源代码) (21)

摘要 本次课程设计的题目是用java语言编写记事本程序,要求是:用图形界面实现;含有简单的文字编辑功能,如:剪切、复制、粘贴、删除;还能实现保存、另存为、查找、替换等功能。 本程序主要用到了Java swing组件和事件监听器,还用到了文件的输入输出流。记事本的界面参考了Windows中的记事本界面,并且根据课程设计要求做了适当的调整。 关键字:记事本程序;Java语言;Jcreator

序言 Java的前身是Oak,它一开始只是被应用于消费性电子产品中。后来它的开发者们发现它还可以被用于更大范围的Internet上。1995年,Java语言的名字从Oak编程了Java。1997年J2SE1.1发布。1998年J2SE1.2发布,标志Java2的诞生。十多年来,Java编程语言及平台成功地运用在网络计算及移动等各个领域。Java的体系结构由Java语言、Java class、Java API、Java虚拟机组成。它具有简单、面向对象、健壮、安全、结构中立、可移植和高效能等众多优点。Java支持多线程编程,Java运行时系统在多线程同步方面具有成熟的解决方案。Java的平台标准有Java ME,Java SE和Java EE。Java发展到今天,它的卓越成就及在业界的地位毋庸置疑。目前在众多的支持Java的开发工具中主要的7有Java Development Kit,NetBeans,Jcreator,JBuilder,JDeveloper和Eclipse等。其中Java Development Kit 简称JDK是大多开发工具的基础。以上的每种开发工具都有优缺点,对于开发者来说,重要的是要根据自己的开发规模、开发内容和软硬件环境等因素来选择一种合适的开发工具。 在本程序设计中,因为需要开发的是记事本程序,规模较小,内容较少, 所以选择了适合初学者使用的JCreator开发工具。

如何用记事本编写一个简单的java代码

如何用记事本编写一个简单的j a v a代码 Document serial number【UU89WT-UU98YT-UU8CB-UUUT-UUT108】

一:怎么用记事本写第一个java代码 第一步:新建txt文档 首先我们在F盘新建一个txt文档,并命名为,如下图所示: 第二步:编写代码 我们双击打开:如下图所示 第三步:编写好代码 我们在记事本中写代码,写好后如下所示:

然后我们同时按Ctrl+s键保存,然后关闭记事本即可 上面的源代码如下: public class Test{//这里的Test为类名,这里类名要与我们刚才新建的记事本的名字必须一致,首字母大写 public static void main(String[] args){//java中的主函数的写法 "HelloWorld");//java中的输出语句写法 } } 第三步:打开控制台界面 我们在计算机中,打开如下图界面,

然后在这里,输入cmd,并按回车,然后弹出如图所示

第四步:在控制台中运行并输出 我们用鼠标点击一下里面黑色部分,然后输入F:然后回车,然后再输入javac 然后回车,最后输入java Test,就可以看到结果了,如下图所示:

红色圈出来部分就是结果了 二:温馨提示: 1,上面演算中在控制台中首先输入F:的原因是因为我在F盘建立一个文本文档,并命名为,如果你是把你的文档文档建立在D盘,则应该输入D: 以此类推。 2,如果你是在F盘下的CH文件夹建立一个记事本,并命名为,则输入的情况如下, cd CH表示转到CH这个文件夹下,然后再输入回车,再输入java Test 就可以看到运行结果了

记事本设计步骤

记事本设计步骤 1. 新生成一Windows应用程序,将窗体的标题设置为“记事本”。 2. 在窗体上添加一menuStrip控件,默认Name 为menuStrip1 , 设置菜单内容如下表 3. 在窗体上添加1个richTextBox控件,默认Name属性为richtextBox1,设置属性Dock为中心对齐,使文本框充满整个窗体。 4.给【新建】文件菜单添加代码如下: private void menuNew_Click(object sender, EventArgs e) { richTextBox1.Clear();

richTextBox1.Focus(); richTextBox1.BackColor = Color.White; richTextBox1.ForeColor = Color.Black; richTextBox1.Font = new Font(richTextBox1.Font.FontFamily, 10); } 5. 在窗体上添加openFileDialog , 默认Name属性:openFileDialog1 ,设置属性如下: openFileDialog1.InitialDirectory = "F:\\" ; openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*" ; openFileDialog1.FilterIndex = 1 ; openFileDialog1.RestoreDirectory = true ; 在【打开】菜单添加代码如下: private void menuOpen_Click(object sender, EventArgs e) { if (openFileDialog1.ShowDialog() == DialogResult.OK) { try { if ((openFileDialog1.FileName ) !="") { richTextBox1.LoadFile(openFileDialog1.FileName, RichTextBoxStreamType.PlainText); } } catch (Exception ex) { MessageBox.Show("错误: 不能读入指定文件. 错误消息: " + ex.Message); } } } 6. 在窗体上添加saveFieDialog ,默认name为saveFileDialog1 ,设置属性如下: saveFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*" ; saveFileDialog1.FilterIndex = 1 ; saveFileDialog1.RestoreDirectory = true ; 在【保存】菜单添加代码如下:

C#实验-记事本(带源码)

记事本——实验报告 一、实验目的 创建一个Windows窗体应用程序,实现记事本的基本功能,具体包括新建文件、打开文件、保存文件、查找等功能。该实验的目的是掌握: (一)窗体程序的开发 (二)常用控件的使用 (三)常用事件的处理 (四)对话框的设计和使用 (五)文件访问的基本方法 二、实验内容 (一)主窗口Form1 图1 主窗口 主窗口界面如图1所示,功能包括基本编辑操作、主菜单和其它快捷键功能。 1、编辑功能用文本框实现。 2、窗口标题与文件名相一致。未打开文件时为“无标题”,打开文件(另存为)后为文件名。 3、支持菜单的热键和快捷键。二者的区别是前者是激活菜单且显示出该菜单项时有效,后者在任何时候有效。 4、实现新建、打开、保存和查找功能。 5、支持F3(查找下一个)。 表1 Form1控件列表

using System; using System.Collections.Generic; using https://www.360docs.net/doc/2013314654.html,ponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO; namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form2 fm2 = null; public string searchText = ""; public Form1() { InitializeComponent(); } private void saveFile() { if (textBox1.Text.Length > 0 && textBox1.Modified) { if (MessageBox.Show("想保存文件吗?", "记事本",

记事本代码

/*C语言Windows程序设计-> 简易文本编辑器-> 演示*/ #include #include #include "resource.h" /*各控件所使用的ID*/ #define ID_EDITBOX 1 //文本编辑框控件 #define ID_TXTPATH 2 //路径编辑框控件 LRESULT CALLBACK About(HWND, UINT, WPARAM, LPARAM); //关于简易记事本弹窗的关闭函数声明。 LRESULT CALLBACK WndProc( HWND, UINT, WPARAM, LPARAM ) ; int CreateChildWindow(HWND, HWND *, LPARAM ) ; //创建将使用到的子窗口控件 int SavaInputContent( TCHAR *, TCHAR * ) ; TCHAR *openbook(TCHAR *path); //保存输入的文字到文件 int WINAPI WinMain( HINSTANCE hInstance, //第一个参数hInstance表示该程序当前运行的实例的句柄 HINSTANCE hPrevInstance, //第二个参数hPrevInstance表示当前实例的前一个实例的句柄。 PSTR szCmdLine, int iCmdShow ) //第三个参数lpCmdLine是一个以空终止的字符串,指定传递给应用程序的命令行参数? { static TCHAR szAppName[] = TEXT( "demo" ) ; HWND hwnd ; MSG msg ; WNDCLASS wndclass ; wndclass.lpfnWndProc = WndProc ; wndclass.style = CS_HREDRAW | CS_VREDRAW ; wndclass.hInstance = hInstance ; wndclass.cbClsExtra = 0 ; wndclass.cbWndExtra = 0 ; wndclass.hbrBackground = CreateSolidBrush(RGB(236, 233, 216)) ; wndclass.hCursor = LoadCursor( NULL, IDC_ARROW ) ; wndclass.hIcon = LoadIcon( NULL, IDI_APPLICATION ) ;

编写一个记事本程序_要求:_用图形用户界面实现。_能实现编辑、保存、另存为、查找替换等功能。

import java.io.*; import java.util.Calendar; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class NoteBook extends JFrame implements ActionListener,ItemListener,WindowListener,MouseListener{ Container c = this.getContentPane(); JMenuBar jmb = new JMenuBar(); JColorChooser jcc = new JColorChooser(); JMenu jm1 = new JMenu("文件(F)"); JMenu jm2 = new JMenu("编辑(E)"); JMenu jm3 = new JMenu("格式(O)"); JMenu jm4 = new JMenu("查看(V)"); JMenu jm5 = new JMenu("帮助(H)"); JMenuItem jmi1 = new JMenuItem("新建(N)"); JMenuItem jmi2 = new JMenuItem("打开(O)"); JMenuItem jmi3 = new JMenuItem("保存(S)"); JMenuItem jmi4 = new JMenuItem("退出(X)"); JMenuItem jmi5 = new JMenuItem("撤消(U)"); JMenuItem jmi6 = new JMenuItem("复制(C)"); JMenuItem jmi7 = new JMenuItem("粘贴(P)"); JMenuItem jmi8 = new JMenuItem("剪切(T)"); JMenuItem jmi12 = new JMenuItem("日期和时间"); JMenuItem jmi9 =m new JMenuItem("字体(E)"); JCheckBoxMenuItem jcbmi = new JCheckBoxMenuItem("自动换行(W)"); JMenuItem jmi10 = new JMenuItem("删除(S)"); JMenuItem jmi11 = new JMenuItem("背景颜色(H)"); JTextArea jta = new JTextArea(15,15); JScrollPane jsp = new JScrollPane(jta); //PupolMenu pm = new Pupolmenu(); NoteBook(){ this.addWindowListener(this); c.setLayout(new BorderLayout()); c.add(jmb,BorderLayout.NORTH); this.setTitle("新建文本文档"); jmb.add(jm1); jm1.setMnemonic('f'); jm1.addActionListener(this); jmb.add(jm2); jm2.setMnemonic('e'); jmb.add(jm3); jm3.setMnemonic('o'); jmb.add(jm4);

vb课程设计记事本程序的编写

1 选题的背景与意义 记事本创建的背景 通过一学期的vb课程学习,理解并掌握了许多相关知识,知道了面向对象程序设计的基本概念和可视化程序设计的基本方法。为了更好地掌握与运用vb 中最常用的有关窗体和各种控件的运用、菜单、工具栏、对话框、状态栏、的设计以及文件操作等技术,因此在在学完该课程之后,设计了一个能够编辑编辑文本文档、RichText 文档,其文字处理能力类似于Word的简易记事本。 记事本创建的意义 该记事本具有操作简单,易懂灵活,一目了然的特点,同时由于运用了RichText控件,因此能够打开和编辑任意大的文档,运用起来比windows自带的记事本方便的多。从而为那些计算机技术应用并不熟练但需要使用计算机快速编辑和修改文档的用户提供了便利。同时该程序的编写也使得自己的知识掌握的更见牢固。 2 系统详细设计 主要功能 能够编辑文本文档,其文字处理功能类似于Word。 具有打开、保存、新建和退出文件功能。 具有剪切、复制、粘贴、设置文字的字体以及大小、颜色、对齐等文字编功能。以及字符串的查找功能。 打印功能。

要点的实现既使用技术 首先,在创建程序是应先设置窗体大小和编辑框的大小。 '窗体的加载事件 Private Sub Form_Load() = 0 = 0 = - 4000 = - 5000 = "宋体" '程序运行时字体是宋体 End Sub '设置编辑框的大小和位置 Private Sub Form_Resize() = 60 = 20 = - 100 = - 100 End Sub 第二,程序设计过程中必须先在窗体中添加CommonDialog和RichText控件。 如左图所示。CommonDialog控件的应用使得它提 供了如打开和保存文件,设置打印选项,选择颜 色和字体等操作的一组标准对话框,使我们通过 对话框填写的方式来实现上述操作。RichText控 件的使用是编辑和打开的文件大小不受限制。有 利于文件的编辑。

VS编写的记事本源码

记事本 一、打开visual studio 新建——项目——windows窗体应用程序命名:年终大 作业; 二、Form.cs中作如下操作: 三、在工具箱中选择如下控件:menuStrip、contextMenustrip、colordialog、 savefiledialog、folderbrowserdialog、fontdialog、openfiledialog、statustrip 、Folderbrowserdialog 四、单击menuStrip并输入文件(&F),双击后输入新建(&N)并单击新建在 属性中的shortkeys中选择Ctl+N;并在那么属性中改名为“新建”、后面类似; 五、单击statustrip在其属性中的item属性中选择添加label4个; 六、分别输入以下代码:using System; 七、using System.Collections.Generic; 八、using https://www.360docs.net/doc/2013314654.html,ponentModel; 九、using System.Data; 十、using System.Drawing; 十一、using System.Linq; 十二、using System.Text; 十三、using System.Windows.Forms; 十四、using System.IO; 十五、 十六、 十七、namespace 年终大作业 十八、{ 十九、public partial class Form1 : Form 二十、{ 二十一、public Form1() 二十二、{ 二十三、InitializeComponent(); 二十四、} 二十五、 二十六、private void 新建_Click(object sender, EventArgs e) 二十七、{

记事本

目录 第1章课程设计目的与要求 (1) 1.1设计目的 (1) 1.2实验环境 (1) 1.3预备知识 (1) 1.4设计要求 (1) 第2章课程设计内容 (2) 2.1 课题描述 (2) 2.2 系统设计 (3) 2.2.1功能分析 (3) 2.2.2面向对象设计 (4) 2.2.2类成员描述 (6) 2.3程序实现 (8) 2.3.1源码分析 (9) 2.3.2运行结果 (14) 第3章总结 (15) 参考文献 (16)

第1章课程设计目的与要求 1.1设计目的 将理论教学中涉及到的知识点贯穿起来,对不同的数据类型、程序控制结构、数据结构作一比较和总结,结合设计题目进行综合性应用,对所学知识达到融会贯通的程度。通过课程设计,学生在下述各方面的能力应该得到锻炼: (1)进一步巩固、加深学生所学专业课程《JAVA语言教程》的基本理论知识,理论联系实际,进一步培养学生综合分析问题,解决问题的能力。 (2)全面考核学生所掌握的基本理论知识及其实际业务能力,从而达到提高学生素质的最终目的。 (3)利用所学知识,开发小型应用系统,掌握运用JAVA语言编写调试应用系统程序,训练独立开发应用系统,进行数据处理的综合能力。 (4)对于给定的设计题目,如何进行分析,理清思路,并给出相应的数学模型。 (5)掌握面向对象程序设计的方法。 (6)熟练掌握JAVA语言的基本语法,灵活运用各种数据类型。 (7)进一步掌握在集成环境下如何调试程序和修改程序。 1.2实验环境 硬件要求能运行Windows 操作系统的微机系统。JAVA语言应用程序开发软件使用:VJAVA 系统,或其他JAVA语言应用程序开发软件。 1.3预备知识 熟悉JAVA语言程序设计的基本知识及VJAVA编辑器的使用方法。 1.4设计要求 1.仔细分析设计题目,画出程序流程图,编写程序源代码。 2.积极上机调试源程序,增强编程技巧与调程能力。 3.认真书写课程设计预习报告,课程设计说明书。 4.遵守课程设计要求和机房管理制度,服从指导教师的安排,确保课程设计的顺利完成课程设计内容。

模拟记事本程序

北京理工大学珠海学院课程设计说明书 2012—2013学年第2学期 题目: 模拟记事本程序 学院:计算机学院 专业班级: 学号: 学生姓名: 指导教师: 成绩: 时间: 2013年5月 22日

北京理工大学珠海学院 课程设计任务书 2012—2013学年第2学期 学生姓名: 专业班级: 指导教师:工作部门: 一、课程设计题目 模拟记事本程序 二、课程设计内容 用文本命令行界面模拟记事本功能:包括编辑、保存、另存为、复制、粘贴、查找、替换等功能。 三、进度安排 (1)1-2学时,选定题目、分析需求、理解需求; (2)3-4学时,程序设计,定义数据类型、数据处理方式; (3)5-10学时,编写程序、调试、测试; (4)11-12学时,编写设计报告; (5)13-16学时,答辩。 四、基本要求 (1)只能使用C++语言,源程序要有适当的注释,使程序容易阅读 (2)至少采用文本菜单界面(如果能采用图形菜单界面更好) (3)学生可自动增加新功能模块(视情况可另外加分) (4)建立文件操作类、界面显示类及相关接口类,用文件读写实现。 (5)写出课程设计报告,应不少于3000字(不含附录),同一组学生只需提交1份,但必须在报告中列明分工。 课程负责人签名: 年月日

课程设计分工安排 课程设计成绩评定表

模拟记事本摘要 本程序采用纯C++编写,用文本命令行界面模拟记事本功能:包括编辑、保存、另存为、复制、粘贴、查找、替换等功能。运用了vector容器来充当寄存器,还用 #include实现文件的读入读出 关键词:面向对象;模拟记事本;文件读写;编辑、保存、另存为、复制、粘贴、查找、替换 目录 第一章设计内容 (1) 第二章总体设计 (5) 2.1模块化设计 (5) 2.2程序运行示意图 (5) 第三章详细设计 (5) 3.1数据结构设计 (6) 3.2程序模块设计 (6) 3.3流程图 (10) 第四章调试与测试 (10) 4.1调试过程中的主要问题 (10) 4.2测试结果 (10) 参考文献 (13) 心得体会 (13)

(完整版)JAVA记事本源代码毕业设计

以下文档格式全部为word格式,下载后您可以任意修改编辑。 JAVA记事本源代码 import java.awt.*; import java.awt.event.*; import java.text.*; import java.util.*; import java.io.*; import javax.swing.undo.*; import javax.swing.*; import javax.swing.event.*; import java.awt.datatransfer.*; import java.util.List; public class Notepad4 extends JFrame implements ActionListener, DocumentListener { JMenu mFile, mEdit, mMode, mView, mHelp; ---文件菜单 JMenuItem mFile_New, mFile_Open, mFile_Save, mFile_ASave, mFile_Print, mFile_Exit; ---编辑菜单 JMenuItem mEdit_Undo, mEdit_Cut, mEdit_Copy, mEdit_Paste, mEdit_Del, mEdit_Search, mEdit_SearchNext, mEdit_Replace, mEdit_Turnto, mEdit_SelectAll, mEdit_TimeDate;

---格式菜单 JCheckBoxMenuItem formatMenu_LineWrap; JMenu formatMenu_Color; JMenuItem formatMenu_Font, formatMenu_Color_FgColor, formatMenu_Color_BgColor; ---查看菜单 JCheckBoxMenuItem viewMenu_Status; ---帮助菜单 JMenuItem mHelp_HelpTopics, mHelp_About; ---弹出菜单级菜单项 JPopupMenu popupMenu; JMenuItem popupMenu_Undo, popupMenu_Cut, popupMenu_Copy, popupMenu_Paste, popupMenu_Delete, popupMenu_SelectAll; ---工具栏按钮 JButton newButton, openButton, saveButton, saveAsButton, printButton, undoButton, redoButton, cutButton, copyButton, pasteButton, deleteButton, searchButton, timeButton, fontButton, boldButton, italicButton, fgcolorButton, bgcolorButton, ; 文本编辑区域 static JTextArea Text; 状态栏标签 JLabel statusLabel1, statusLabel2, statusLabel3; JToolBar statusBar; ---系统剪贴板 Toolkit toolKit = Toolkit.getDefaultToolkit();

键盘使用说明书完整版

一、键盘简介键盘是计算机使用者向计算机输入数据或命令的最基本的设备。常用的键盘上有 101 个键或 103 个键,分别排列在四个主要部分:打字键区、功能键区、编辑键区、小键盘区。 现将键盘的分区以及一些常用键的操作说明如下: ( 一) 打字键区 它是键盘的主要组成部分,它的键位排列与标准英文打字机的键 位排列一样。该键区包括了数字键、字母键、常用运算符以及标点符号键,除此之外还有几个必要的控制键。下面对几个特殊的键及用法作简单介绍。 键的名称 主要功能说明 空格键 键盘上最长的条形键。每按一次该键,将在当前光标的位置上空 出一个字符的位置。 [Enter ↙]回车键 (1)每按一次该键,将换到下一行的行首输入。就是说,按下该键后,表示输入的当前行结束,以后的输入将另起一行。 (2)或在输入完命令后,按下该键,则表示确认命令并执行。[CapsLock] 大写字母锁定键 在打字键区右边。该键是一个开关键,用来转换字母大小写状态。每按一次该键,键盘右上角标有CapsLock 的指示灯会由不亮变成发亮,或由发亮变成不亮。这时:(1) 如果 CapsLock 指示灯发亮,则

键盘处于大写字母锁定状态: 1) 这时直接按下字母键,则输入为大写 字母;2) 如果按住 [Shif] 键的同时,再按字母键,输入的反而是小写字母。(2) 如果这时CapsLock 指示灯不亮,则大写字母锁定状态被取消。[Shift]换档键 换档键在打字键区共有两个,它们分别在主键盘区(从上往下数,下同)第四排左右两边对称的位置上。 (1)对于符号键(键面上标有两个符号的键,例如:等,这些键也 称为上下档键或双字符键)来说,直接按下这些键时,所输入的是该 键键面下半部所标的那个符号(称为下档键); 如果按住 [Shift] 键同时再按下双字符键,则输入为键面上半 部所标的那个符号(称为上档键)。如: [Shift]+=% (2)对于字母键而言:当键盘右上角标有 CapsLock 的指示灯不亮时,按住 [Shift] 键的同时再按字母键,输入的是大写字母。例如:CapsLock 指示灯不亮时,按 [Shift]+S键会显示大写字母S [ ←BackSpace]退格删除键 在打字键区的右上角。每按一次该键,将删除当前光标位置的 前一个字符。 [Ctrl]控制键 在打字键区第五行,左右两边各一个。该键必须和其它键配合 才能实现各种功能,这些功能是在操作系统或其他应用软件中进行设定的。例如: 文案大全

制作记事本(全)

记事本实验 本实验介绍如何使用Visual C# 2008设计一个Windows应用程序——记事本,通过本章的学习,可以进一步掌握MenuStrip(菜单)、ToolStrip(工具栏)、RichTextBox(高级文本框)和StatusStrip(状态栏控件)等控件的使用,以及如何使用CommonDialog(公共对话框)实现对文本的存取、格式设置等操作。 1.1 记事本简介 记事本是一种常用的软件,在微软的Windows中,自带了一个记事本软件,Windows XP 下的记事本软件如图1-1所示。 图1-1 Windows自带的记事本 本章介绍的记事本,实现了Windows自带的记事本的部分功能外,并且还可以任意更改字体的字体类型、大小和颜色,并在状态栏中显示时间。为了方便用户的操作,还在程序的窗体上放置了一个工具栏。 本章介绍的记事本程序具有文件的新建、打开、保存功能;文字的复制、粘贴、删除功能;字体类型、格式的设置功能;查看日期时间等功能,并且用户可以根据需要显示或者隐藏工具栏和状态栏。 接下来将详细的介绍记事本程序的设计与实现的步骤和方法。 1.2 记事本界面设计 新建一个Windows应用程序,并命名为“Notepad”。本节介绍记事本程序的界面设计以及界面上各控件的属性设置。

新建好“Notepad”项目后,定位到记事本程序的窗体设计器窗口,然后依次在窗体上放置以下控件(各1个): (1)MenuStrip(菜单控件)。 (2)ToolStrip(工具栏控件)。 (3)RichTextBox(多格式文本框控件)。 (4)StatusStrip(状态栏控件)。 (5)OpenFileDialog(打开对话框)。 (6)SaveFileDialog(保存对话框)。 (7)FontDialog(字体对话框)。 (8)Timer(计时器控件)。 最终的用户界面如图1-2所示(设置好属性后),其中MenuStrip控件、ToolStrip控件、StatusStrip控件、OpenFileDialog对话框、SaveFileDialog对话框、FontDialog对话框和Timer 控件显示在窗体设计器下方的组件板上。 图1-2 记事本用户界面

日历记事本程序代码

运行界面:

// CalendarWindow类 package others; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.*; import java.io.*; import java.awt.SplashScreen; public class CalendarWindow extends JFrame implements ActionListener,MouseListener,FocusListener { Calendar calendar; int year,month,day; CalendarMessage calendarMessage; CalendarPad calendarPad; NotePad notePad; JTextField showYear,showMonth; JTextField showDay[]; CalendarImage calendarImage; String picturename;//图像名称; String getPicture_address; Alarm alarm; JButton nextYear,previousYear,nextMonth,previousMonth; JButton saveDailyRecord,deleteDailyRecord,readDailyRecord,changeBackground; File dir; Color backColor=Color.white; public CalendarWindow() { dir= new File("./dailyRecord"); dir.mkdir(); showDay = new JTextField[42]; for(int i=0;i

用Java程序编写一个记事本程序的设计报告

用Java程序编写一个记事本程序的 设计报告 学习中心(点):泾阳学习中心 专业:计算机科学与技术 层次:专升本 姓名:李永固 批次: 112

目录 一、设计分析 (1) 二、程序结构 (1) 三、各模块的功能及程序说明 (2) 1、类设计 (2) 2、主要功能代码实现 (4) 四、源程序 (9) 五、操作方法 (20) 六、试验结果 (20) 七、设计体会 (22)

用Java程序编写一个记事本程序的设计报告 一、设计要求 1.用图形用户界面实现。 2.能实现编辑、保存、另存为、查找替换等功能。 二、程序结构 流程图: 图1基本流程图

本Java文本编辑器功能设计如下: 图2基本功能图 三、各模块的功能及程序说明 1、类设计 (1)类MiniText ,包括initTextPane方法初始化面板,initMenu()方法初始化菜单,initAboutDialog()方法初始化关于对话框,initToolBar()方法初始化工具栏,initRightKey()方法初始化右键设置,等方法。类成员如下:

(2)类Loading (实现登陆)类成员如下:

(3)类runtime (实现时间同步) 类成员如下: (4)类MainFunction (包含主函数) 类成员如下: 2、主要功能代码实现 (1)登陆界面: class Loading extends JWindow implements Runnable { Thread dluThread=null; private JProgressBar progress; public Loading() { setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));//设置光标为等待状态JPanel dlu = new JPanel(new BorderLayout()); URL url = getClass().getResource("/images/loading.jpg"); if(url != null){ dlu.add(new JButton(new ImageIcon(url)), BorderLayout.CENTER); } progress = new JProgressBar(1,100); progress.setStringPainted(true); progress.setBorderPainted(true); progress.setBackground(Color.white); progress.setForeground(Color.green); dlu.add(progress,BorderLayout.SOUTH); setContentPane(dlu); //设置窗口属性为登陆面板属性 Dimension screen = getToolkit().getScreenSize(); pack(); //显示登陆界面 setLocation(screen.width/4,screen.height/4); //设置登陆界面始终在屏幕中间显示 } public void start(){ // this.toFront(); dluThread=new Thread(this); dluThread.start(); } public void run(){ show();

相关文档
最新文档