版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、xxxxxx计算机系综合性实验实验报告课程名称java程序设计a实验学期 xxxx至 xxxx学年第x学期学生所在系部计算机系年级 xxxx专业班级xxxxxx学生姓名xxx学号xxxxxxxxxxxx任课教师xxx实验成绩计算机系制java程序设计a课程综合性实验报告开课实验室:年 月曰实验题目简易写字板软件设计一、实验目的通过编写java的应用系统综合实例简易写字板软件,总结、回顾和实践面向对象的编 程思想以及编程方法,并通过编写程序來掌握java语言编程技巧,将学习到的知识融会贯通, 同时提髙调试程序的能力,养成良好的编程习惯,并增强对程序设计整体思路的把握。程序使用net beans集
2、成开发环境完成,熟悉并掌握在net beans开发环境下编写java程序。 设备与环境硬件:多媒体计算机软件:windows 2000以上的操作系统、jdk开发包、jdva集成开发环境等。三、实验内容总体要求:程序界面友好,代码的可维护性好,包括必要的注释和相应的文档。具体要求:基本的文本录入,字符修改,删除,换行,粘贴,复制,剪切等功能,主要包括:1. 菜单栏设计及功能实现:菜单栏主要包括文件、编辑、格式、帮助等常见菜单。其中文件菜单有新建、打开、保存、另存为、退出等功能;编辑菜单有剪切、复制、粘贴、 查找和查找替换等功能;格式菜单含冇对文字字体、字型、字号及颜色等的设置功能。2. 编辑区设
3、计:对文本的编辑处理区。3. 工具栏设计:可根据需要增加该项功能。4. 其他功能设计。四、实验结果及分析(一)主界面的设计与实现设置窗体的大小等基本属性及菜单项中的功能列表项public mynoteofrm. settitlec记事本");frm. add (jsp);tx. seteditable(false);lx. addmouselistener(this);tx. setsel ectioncolor (new color (100, 150, 250);jsp. setviewportviewtx);frm. getcontentpanc() addjsp, borde
4、rlayout. center ;jmenubar jmb = new jmenubar();jmenu jml = new jmenuc文 件(f)");string: label 1 = 新建,打开,保存,另存为,退出 ;jmenuitem jmi1 = new jmenuitemlabell. length;for (int i = 0; i < jmi1. length; i+) jmi 1 i = new jmenuitemdabolli);jml. add(jmili);jmili. addactionlistoner(this);jml. insertsepara
5、tor(1);jml. insertseparator(3);jml. insertseparator(6);jmenu jm2 = new jmenu c"编 辑(e)");string: label2 = 撤销,剪切,复制",粘贴,删除,查找,替换,“ 全选时间/日期";jmenuttem jmi2 = new jmenuttemlabel2. length;for (int i = 0; i < jmi2.1ength; i+)jmi2i = new jmenuitem(label2i);jm2. add(jmi2ij);jmi 2i. ad
6、dactionli stener(this);jm2. insertseparator(1);jin2. insertseparator (5);jin2. insertseparator (7);jin2. insertseparator (10);jmenu jm3 = new jmenu格 式(0)");jmenu i tom jmi3 = new jmenu i tern (z/ 自动换彳亍”);jmi3. addactionlistener(this);jmenu jm3_l = new jmenu c字体大小");string: label3_l = 10, 2
7、0, 30, 40, 50 ;jmenuitem jmi3_l = new jmenultemlabel3_l. length;for (int i = 0; i < jmi3_l. length; i+)jmi3_li = new jmenuitem(label3_li);jm3_l. add(jmi3_li);jmi3_li. addactionlistener(this);jmenu jm3 2 = new jmenu(,z字体颜色);stringu label3_2 = 红色,绿色,蓝色,品红:桔黄 ;jmenuitem jmi3 2 = new jmenuitemlabel3
8、2.length; for (int i = 0; i < jmi3_2. length; i+) jmi3 2i = new jmenultcm(label3 2i);jm3_2. add(jmi3_2i);jmi3_2i addactionlistener(this);jmenu jmd = new jmenu帮 助(h);jmenuitem jmi4 = new jmenuitemc关于“); jm4. add (jmi4);jmid. addactionlistener (this);jm3. add(jmi3);jm3. add (jm3_l);jm3. add (jm3_2)
9、;jmb. add (jml);jmb. add (jm2);jmb add(jm3);jmb add(jm4);jbl. addacti on listener (this);jb2. addactionlistener (this);jb3. addacti on listener (this);jb4. addacti on listener (this); ebl addltemlistenor (this); ckbl_ 1. addltemlistencr(this); ckbl_2. addltemlistencr(this);frm setjmenubar(jmb);frm.
10、pack ();frm. setsize (950, 540);frm. setlocation(160,120);frm. setvisible(tme);frm. set iconimage (/getlmageo);frm. addwindowlistener(new windowadapter ()public void windowclosing(windowevent e)frm. removeall ();frm. dispose ();i);(二)文件菜单的设计与实现文件栏的实现1. 新建功能的实现:if (comm.equals ("新建")dress =
11、" ”;tx.settext(” ”);xjsign = 1;tx.seteditable(true);frm.settitle (”无题一记事本”);2. 打开功能的实现:选择打开路径后开始执行打开功能,首先会提醒用户选择文件,选择文 件后程序会口动获取文件名和相关的路径(如果没有选择则返回),具体实现代码如下:public void openfile()/扌j开dress = h h;font f = tx.getfont();string name = f.getname();int style = f.getsty丄e();filedialog fd = new filedi
12、alog (frma ”打开”);fd.-s4=tew ();if (fd.getfile () = null) /如果没有选择文件,则返回return;frm. settitle (fdgetfi.e() + ”一记事本”);trydress = fd.getdirectory() + file.separator + fd.getfile();/ 取得文件名包括路径;filelnputstream io = new filelnputstream (dress) ; /至0路径byte a = new byteioavailable();ioread(a);ioclose();string
13、 str = new string(a);tx.setfont(new font(name,style,15);tx.seteditable(true);data = str;tx.settext(str);catch(exception g) 3. 保存功能的实现:点击保存后会弹出对话框,如果用户还没有新建文本则提醒用户“您还 没有新建文木文档”,新建文木后点击保存会按用户设定的路径保存文木,具体代码如下:if (comm, equals ( ”保存”)if(dress !="")tryfileoutput st ream f o = new fileo ut put s
14、t ream (c/ress);string str = tx.gettext();fo.write(str getbytes();fo close ();catch(exception h)else if(dress = ” ”&&xjsign = 1)filedialog fd = new filedialog (frm, filedialog. save);fd.ohow();savefile(fd);elsejoptionpane showmess<agedf<a_zog(nul,"你还未新建文本文档! ”);4. 另存为功能的实现:点击另存为,弹
15、出对话框,如果用户还没冇新建文本则提醒用户“您 还没冇新建文本文档”,新建文木后则让用户选择要期存为的路径,保存文木,具体代码如下:if (comm, equals (另存为 n )if (xjsign = 1)filedialog fd = new filedialog (frmzf filedialog. save);fd-s4ew ();savefile(fd);elsejopt ionpane . showmessagedialog (null, ”你还未新建文木文*当! ”);编辑栏功能实现1. 撤销,剪切功能的实现:if (commequals (”撤¥肖”)string
16、 change = tx.gettext();tx.settext(data);int lenl = 0alen2 = 0;lenl = change 1ength();len2 = data.length();if(len2>lenl)tx.select(lenl, len2);elsetxselect(len2, lenl);data = change;if (comm. equals (”剪切”)jian = 1;fuzhistr = tx.getselectedtext();tx.replaceselection("");2. 复制,粘贴功能的实现:if (c
17、omm, equals (”复制”)jian = 0;fuzhistr = n n;fuzhistr = tx.getselectedtext();tx.copy();if (comm. equals (”#占犯i”)int start = tx.getcaretposition ();tx.insert(fuzhistr, start);if(j ian = 1)fuzhistr = ,f n;3. 查找替换功能的实现:点击查找和替换都会弹出一个对话框,查找对话框会提醒用 户根据什么杏找,杏找内容,用户可根据自己的需要进行杳找;替换对话框会提醒用户先杏 找已有的内容,然后需要把内容替换为什么
18、,然后进行替换,具体实现代码如下:if (comm.equals ("查找”)if(thd = 0)set = 0;qufen = 1;czd = 1;search ();if (e . getsource () = jbl)/杳找string czstri = 1111;string strain = 11h;int n = 0;czstr = tx.gettext();strall = jtf.gettext();czstrl = czstr.tolowercase();strain = strall. tolowercmse ();if(fangxiang = 0)if(quf
19、en = 0)if(czsign = 0)n = czstr.indexof(strall, set);elsen = czstr.indexof(strallf set +elseif(czsign = 0)n = czstrl. indexof (strain, set)elsen = czstrl. indexof (strain, setelseczsign = 1;if(qufen = 0)n = czstr.lastlndexof(stroll, set 一elsen = czstrl lastindexof (strain, setif (n != -1)if(fangxiang
20、 = 0)strajljl length ();+ stralllength();stralllength();一 stralllength();set = n + 1;elseset = n - 1;tx.setselectionstart(n);tx.setselectionend(n + stralllength(); elsestrall);joptionpane . showmessagedialog (null找不至【j"if (e . getsource ()= 力2)/取消jdremoveall ();jd.dispose();czd = 0;thd = 0;if (
21、comm. equals ("替换”)if(czd = 0)set = 0;qufen = 1;thd = 1;tihuan ();if (e .getsource () = jb3)/替换string str = jtft.gettext();int start = set 一 1;tx.replaceselection(str);tx select(start,start + str.length();if (e.getsource () = jb4) /全部替换string czstrl = h h;string stralll = n h;string strl = ”;in
22、t nl = 0小2 = 0;int setl = 0;czstr = tx.gettext ();strall = jtf.gettext();strl = jtft.gettext();czstrl = czstr.tolowercase();strain = strall tolowercase ();if(qufen = 0)n2 = czstr.lastlndexof(strall);elsen2 = czstrl.lastindexof(stralll);while(setl <= n2)if(qufen = 0)nl = czstr.indexof(strallf set1
23、);elsenl = czstrlindexof (strain, setl);if (nl != -1)setl = nl + 1;tx.setselectionstart(nl);tx.setselectionend(nl + stralllength(); tx.replaceselection(strl);4. 全选/时间/fl期功能设定if (comm.equals ("全选")tx.selectall();if (comm, equals (”吋间 / h 期")int start = tx.getcaretposition ();date d = n
24、ew date ();simpledateformat sdf = new simpledateformat(ukk:mm yyyy/mm/dd”);string str = sdf.format(d);tx.insert(strf start);工具栏的实现:1. 自动换行功能实现if (comm.equals (” 自动换行”)tx setlinewrap(true);2. 字体大小功能实现:字体大小功能设置比较简单,设置了 5中大小字体,分别为10, 20, 30, 40, 50用户可以根据自己的需要进行选择然后输入,具体代码如下:if(comm.equals("10 h)七x
25、.setfont(new font(name,style,10);if(commequals("20”)tx.setfont(new font(name,stylez 20);if(commequals(u30n)txsetfont(new font(name,style,30);if(comm.equals("40”)txsetfont(new font(name,style,40);if (comm, equals (*' 50 *')txsetfont(new font(name,style,50);3字体颜色功能实现:颜色设置了几只能够比较简单的色彩,红绿蓝,用户可根据口己的喜好进行选择,具体代码如下:if (comm.equals ( ”纟色”)tx.setforegrou
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教师资格证备考资料-中学教育学课件
- 2024年粉煤灰堆场整治与土地修复服务合同3篇
- 2024年度租赁合同标的物使用限制及违约处理3篇
- 二零二四年房地产项目开发合作合同3篇
- 二零二四年度智慧城市建设项目施工合同2篇
- 《刺吸害虫》课件
- 《实验报告》课件
- 2024年度农产品电商平台合作协议
- 2024年度高速公路监控系统升级合同2篇
- 2024年度住宅小区物业管理服务合同5篇
- ELISA检测技术教学课件
- 模拟创建公司实训
- 色彩心理学课件
- 梅尼埃病学习课件
- 二十年后再相会混声合唱谱
- 防火门的常见问题与维护课件
- 异戊酸血症汇报演示课件
- 普及精神卫生健康知识讲座
- 3.5共点力平衡(动态平衡)课件-高一上学期物理人教版
- 绿色供应链的构建与管理
- 山东省青岛市2023-2024学年高三上学期期末模拟考试政治模拟试题(含答案)
评论
0/150
提交评论