文本编辑器Delphi课程设计报告书.docx

上传人:b****6 文档编号:8356665 上传时间:2023-01-30 格式:DOCX 页数:14 大小:158.38KB
下载 相关 举报
文本编辑器Delphi课程设计报告书.docx_第1页
第1页 / 共14页
文本编辑器Delphi课程设计报告书.docx_第2页
第2页 / 共14页
文本编辑器Delphi课程设计报告书.docx_第3页
第3页 / 共14页
文本编辑器Delphi课程设计报告书.docx_第4页
第4页 / 共14页
文本编辑器Delphi课程设计报告书.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

文本编辑器Delphi课程设计报告书.docx

《文本编辑器Delphi课程设计报告书.docx》由会员分享,可在线阅读,更多相关《文本编辑器Delphi课程设计报告书.docx(14页珍藏版)》请在冰豆网上搜索。

文本编辑器Delphi课程设计报告书.docx

文本编辑器Delphi课程设计报告书

 

课程设计任务书

班级

一、设计题目:

文本编辑器设计

二、设计容:

本设计是建立一个文本编辑器,MicrosoftWord虽然文字处理功能强大,但是启动速度慢,文件庞大许多时候我们只用到部分功能。

三、基本要求:

1、对源程序编写的要求:

(1)能够实现任务书中的功能;

(2)尽可能使界面友好、直观、易操作;

(3)源程序要有适当的注释,使程序容易阅读。

2、撰写“课程设计报告”,撰写要求见附件实习报告撰写排版要求。

3、课程设计验收要求:

(1)运行所设计的系统;

(2)回答有关问题;

(3)提交课程设计报告和任务书;

(4)提交源程序

系统功能要求

该文本编辑器具有完整的菜单,大部分菜单都在窗体对应有一个快捷图标。

包括新建、打开、保存、剪切、复制、粘贴、做对齐、右对齐、居中、文字加粗、文字倾斜、文字下划线和文字大小等命令,在菜单中还包括字体颜色、窗体背景颜色。

利用这些命令,可以很方便地处理很多文本文档。

该程序界面有好,当把鼠标放在快捷工具栏上时,程序会给出快捷菜单提示,同时,在窗体下方的中间,也有该快捷命令的说明文字。

四、进度安排:

1、系统分析、设计准备阶段:

4学时

2、编程调试阶段:

44学时

3、总结和书写报告阶段:

10学时

4、考核阶段:

2学时

指导教师:

年月日

1、实验题目:

文本编辑器

2、项目概述

程序大部分菜单都在窗体中对应有一个快捷图标。

包括新建、打开、保存、剪切、复制、粘贴、左对齐、右对齐、居中、文字加粗、文字倾斜、文字加下划线和文字大小等命令,在菜单中还包括字体颜色、窗体背景颜色等命令。

利用这些基本命令,可以很方便地处理很多文本文档。

该程序界面友好,当把鼠标放在快捷工具栏上时,程序会给出快捷菜单提示,同时,在窗体下方的中间,也有该快捷命令的说明文字。

首先要解决窗体的布局和设计问题。

然后给各个菜单和快捷工具栏中的按钮添加相关程序代码。

这个文本编辑器与一般的简易的文字编辑程序的制作有所不同。

首先,必须设置好菜单的属性及功能;其次,当所有的菜单都设计好之后,还必须对工具栏进行设计,工具栏的开发与设计是最具挑战性的工作,因为整个界面的美观都取决于工具栏的制作,而整个程序使用是否方便、快捷,也取决于工具栏的安排和属性的设置。

然后,还需进行一些细部的修饰,例如底部任务栏上的提示用语以及帮助菜单的设计等。

3、系统的功能需求

3.1总体设计

 

3.2系统功能

该文本编辑器具有完整的菜单,大部分菜单都在窗体对应有一个快捷图标。

包括新建、打开、保存、剪切、复制、粘贴、做对齐、右对齐、居中、文字加粗、文字倾斜、文字下划线和文字大小等命令,在菜单中还包括字体颜色、窗体背景颜色。

利用这些命令,可以很方便地处理很多文本文档。

该程序界面有好,当把鼠标放在快捷工具栏上时,程序会给出快捷菜单提示,同时,在窗体下方的中间,也有该快捷命令的说明文字。

3.3系统工作流程

 

4、文本编辑器的详细设计

4.1文本编辑器的界面设置

4.1.1新建工程

(1)启动Delphi7.0程序。

选择“文件”菜单下的“新建”命令,从弹出的子菜单中选择Application选项,则出现新建工程的Form1窗口。

(2)选择“文件”菜单下的“工程另存为”命令,弹出SaveUnit1As对话框。

在“保存在”列表框中选择需要存放该窗口文件所在的目录名;在“文件名”编辑框中填写文件名,这里填写“Unit1”,点击“保存”按钮,保存上面的选项。

(3)执行上一步后,将弹出“工程另存为”对话框。

在“保存在”列表框中选择需要存放该工程的目录名,最好和第

(2)步选取相同的目录;在“文件名”编辑框中填写保存处理该工程的源代码的文件名,这里填写“Project1”,点击“保存”按钮,保存上面的选项。

4.1.2修改窗口:

(1)激活Form1窗口,在“属性”面板中设置该窗体的Caption属性为“文本编辑器”,Color属性设置为“clBtnFace”。

(2)选择standerd页上的选择“标准”页上的MainMenu选项,在窗体中添加MainMenu控件。

双击MainMenu控件。

菜单设计如下:

文件(新建、打开、保存、退出),编辑(剪切、复制、粘贴、自动换行、全选),格式(对齐(左对齐、居中、右对齐),字体(加粗、倾斜、下划线、颜色),背景),帮助(关于)。

(3)依次选中各个菜单,在“属性”面板上设置其Name属性如下:

文件(filen1)、新建(filenew)、打开(fileopen)、保存(filesave)、退出(fileexit)、编辑(Editn2)、剪切(Editcut)、复制(Editcopy)、粘贴(Editpaste)、自动换行(auto1)、全选(selectall1)、格式(Formatn3)、对齐(align)、左对齐(leftalign)、居中(centeralign)、右对齐(rightalign)、字体(Font1)、加粗(bold1)、倾斜(italic)、下划线(underline1)、颜色(color1)、背景(background)、帮助(helpn4)、关于(aboutnotebook)。

(4)选择Win32页上的ToolBar选项,在窗体中添加ToolBar控件,调整其合适的大小和位置。

在“属性”面板上设置其Color属性为“clBtnFace”、设置其Align属性为“alTop”,使其居于窗体的最上方。

(5)选择“附加”页上的SpeedButton选项,在窗体中的ToolBar上添加12个SpeedButton控件。

(6)点击SpeedButton控件,在“属性”面板上设置Glyph属性,选择BMP格式的图片添加形象的图标。

(7)分别选中各个SpeedButton控件,在“属性”面板上设置其ShowHint属性均为“True”。

然后依次设置各个SpeedButton控件的Hint属性为“新建”、“打开”、“保存”、“剪切”、“复制”、“粘贴”、“左对齐”、“居中”、“右对齐”、“加粗”、“倾斜”和“下划线”。

(8)选择Win32页上的StatusBar选项,在窗体中添加StatusBar控件,在“属性”面板上设置其Align属性为“alBottom”,使其居于窗体的底部。

用鼠标点击其Panel属性右边的文本框(或者双击),打开StatusBar.Panels编辑框,在其中点击新建图标,新建提示文字“0-文本编辑器”,这将为窗体底部的任务栏添加提示文字。

(9)选择“对话框”页上的ColorDialog选项,在窗体中添加ColorDialog控件,在“属性”面板上设置其Name属性为“ColorDialog1”。

(10)选择“对话框”页上的FontDialog选项,在窗体中添加FontDialog控件,在“属性”面板上设置其Name属性为“FontDialog1”,Options属性为“fdEffects”。

(11)选择“对话框”页上的OpenDialog选项,在窗体中添加OpenDialog控件,在“属性”面板上设置其Name属性为“OpenDialog1”,设置其Filter属性为“文本文件(*.txt)|*.txt”,设置其Options属性为“[ofHideReadOnly,ofEnableSizing]”。

(12)选择“对话框”页上的SaveDialog选项,在窗体中添加SaveDialog控件,在“属性”面板上设置其Name属性为“SaveDialog1”,设置其Filter属性为“文本文件(*.txt)|*.txt”,设置其Options属性为“[ofHideReadOnly,ofEnableSizing]”。

(13)选择“标准”页上的Memo选项,在窗体中添加Memo控件,在“属性”面板上设置其Name属性为“Memo1”,Color属性为“clWindow”,对齐方式Align属性为“alClient”,使其占据窗体剩下空间。

4.2文本编辑器的详细代码分析

(1)选择文件菜单下的新建命令,则新建一个文本文件,并将所有相关属性初始化。

代码如下:

procedureTForm1.filenewClick(Sender:

TObject);

begin

Memo1.Clear;

Memo1.SetFocus;

Memo1.Color:

=clMenu;

Memo1.Font.Color:

=clBlue;

Memo1.Font.Size:

=10;

end;

(2)打开文件和保存文件的代码如下:

procedureTForm1.fileopenClick(Sender:

TObject);//打开

begin

ifopendialog1.Executethen

Memo1.Lines.LoadFromFile(opendialog1.FileName);

end;

procedureTForm1.filesaveClick(Sender:

TObject);//保存

begin

ifsavedialog1.Executethen

Memo1.Lines.SaveToFile(savedialog1.FileName);

end;

(3)退出文本编辑器的代码如下:

procedureTForm1.fileexitClick(Sender:

TObject);//退出

begin

close;

end;

(4)因为利用了ColorDialog和FontDialog控件,相关的字体编辑部分的代码很简单,具体代码如下:

procedureTForm1.editcutClick(Sender:

TObject);//剪切

begin

Memo1.CutToClipboard;

end;

procedureTForm1.editcopyClick(Sender:

TObject);//复制

begin

Memo1.CopyToClipboard;

end;

procedureTForm1.editpasteClick(Sender:

TObject);//粘贴

begin

Memo1.PasteFromClipboard;

end;

procedureTForm1.selectall1Click(Sender:

TObject);//全选

begin

Memo1.SelectAll;

end;

procedureTForm1.auto1Click(Sender:

TObject);//自动换行

begin

auto1.Checked:

=notauto1.Checked;

ifauto1.Checkedthen

memo1.WordWrap:

=true

else

memo1.WordWrap:

=false;

end;

procedureTForm1.leftalignClick(Sender:

TObject);//左对齐

begin

leftalign.Checked:

=notleftalign.Checked;

ifleftalign.Checkedthen

Memo1.Alignment:

=taLeftJustify;

end;

procedureTForm1.centeralignClick(Sender:

TObject);//居中

begin

centeralign.Checked:

=notcenteralign.Checked;

ifcenteralign.Checkedthen

Memo1.Alignment:

=taCenter;

end;

procedureTForm1.rightalignClick(Sender:

TObject);//右对齐

begin

rightalign.Checked:

=notrightalign.Checked;

ifrightalign.Checkedthen

memo1.Alignment:

=taRightJustify;

end;

procedureTForm1.bold1Click(Sender:

TObject);//字体加粗

begin

bold1.Checked:

=notbold1.Checked;

ifbold1.Checkedthen

memo1.Font.Style:

=memo1.Font.Style+[fsBold]

else

memo1.Font.Style:

=memo1.Font.Style-[fsBold]

end;

procedureTForm1.italicClick(Sender:

TObject);//字体倾斜

begin

italic.Checked:

=notitalic.Checked;

ifitalic.Checkedthen

memo1.Font.Style:

=memo1.Font.Style+[fsItalic]

else

memo1.Font.Style:

=memo1.Font.Style-[fsItalic]

end;

procedureTForm1.underline1Click(Sender:

TObject);//字体加下划线

begin

underline1.Checked:

=notunderline1.Checked;

ifunderline1.Checkedthen

memo1.Font.style:

=memo1.Font.Style+[fsunderline]

else

memo1.Font.Style:

=memo1.Font.Style-[fsunderline]

end;

procedureTForm1.color1Click(Sender:

TObject);//字体颜色

begin

ifcolordialog1.Executethen

memo1.Font.Color:

=colordialog1.Color;

end;

procedureTForm1.backgroundClick(Sender:

TObject);//窗体背景颜色

begin

ifcolordialog1.Executethen

memo1.Color:

=colordialog1.Color;

end;

procedureTForm1.Memo1Change(Sender:

TObject);

Begin

end;

End.

 

5.心得体会:

生活中我们经常需要用电脑编写一些文档来保存文件,本课程设计是运用了delphi软件开发工具开发的应用软件。

Delphi是上学期学的,记得的东西不大多了,开始看到这个题目的时候不知道应该怎么做,只能翻翻书看看,网上资料找找,图书馆书找找。

有些地方是有说明的,比如运用什么样的控件,属性的功能之类的。

打开了Delphi7,一次次的尝试需要达到的效果,菜单啊,快捷键形象的图标啊之类的。

特别是在快捷键的图标这块,我想了很多,思考了很多。

开始尝试的时候是运用了ImageList控件,但是在选择图标加载完全后没有办法在speedbutton控件中体现出来,问了同学说可以用pagecontrol控件,添加pagecontrol控件,右击选择newpage,然后在属性面板的images选择ImageList1,可以添加图标但后面有字,也不知道怎么把它消除掉。

最后的尝试也是在写日志的时候发现的,写“SpeedButton控件添加图片”去XX,一下就找到了我要的答案,通过右下方的Glyph来选择电脑中的图片,而且所截的图片是需要bmp格式的图片,之前的那些截图都是png格式的。

这就是这次课程设计中比较让我头疼的一个。

还有这次的课程设计所需的代码,因为有好几个功能是相似的,所以写起来也没那么麻烦了。

这次的课程设计巩固深化了我的的理论知识,提高编程水平,并在此过程中培养严谨的科学态度和良好的工作作风;提高综合运用所学的理论知识和方法独立分析和解决问题的能力。

 

6.参考文献

[1]目海, delphi应用程序设计枣庄学院计算机科学系

[2]豫龙何旭洪, delphi数据库系统开发实例导航(第二版)人民邮电

[3]子锐,delphi数据开发自学教程人民邮电

[4]田守瑞、永清,Delphi 7.0实例入门中国青年

[5]毅,Delphi程序设计入门科学

[6]网冠科技,Delphi 7.0程序设计基础百例机械工业 

[7]华民、梁水、方超,Delphi函数参考大全 人民邮电

 

7.致

作为计算机科学与技术的学生,我觉得能做类似的课程设计是十分有意义,而且是十分必要的。

我们在课堂上掌握的仅仅是专业基础课的理论面,做类似的大作业就为我们提供了良好的实践平台。

为了让自己的设计更加完善,更加符合软件工程标准,一次次翻阅各种参考资料是十分必要的,同时也是必不可少的。

作为一名专业学生掌握一门或几门程序设计语言是必不可少的,由于本次课程设计要求用delphi进行开发,在这过程中我对各种的开发环境进行了探索,这使我对delphi的集成开发环境有了更深刻的理解虽然去从未独立应用过它们,但是由于水平有限,难免会有错误,还望老师批评指正。

 

 

8.附录

2014/5/26

刚拿到课题的时候完全不知道怎么办,dephi是上学期学的,很多也忘的差不多了,看了看文本编辑器所需要的功能,大概的翻看了下dephi书中基础的怎样建立程序。

2014/5/27

这个课题要做的是一个介于记事本和word之间的文本编辑器,它功能比记事本多,与记事本一样小巧便捷,功能虽然没用word强大,但是比word更易打开更方便操作。

设置菜单的属性功能。

2014/5/28

去图书馆查阅相关资料,大概的设计了下需要用到的图标命令等的位置和所需容。

2014/5/29

上网查阅了些资料,设计了下流程图。

2014/6/2

这周开始是准备把上周分析的系统功能通过软件实现,先把框架做好,划分几块,分几个功能。

用memo控件画一个框,点击MainMenu控件放在框里面。

把MainMenu1主菜单中的的文件、编辑、格式、帮助以及这些里面分别包含的其他功能放在下拉菜单里,其中格式中的对齐和字体也分为几个小块,开始的时候不知道怎么再分,找了一下试了一些键,发现是通过右击的createsubmenu实现。

想把菜单下面一排变成点击图片就能实现的样式,通过toolbar和SpeedButton实现,寻找小图标也成了问题,截图出来的小图标没有办法放上去。

2014/6/3

昨天遗留下来的小图标问题,把可以将图片放入的可能性都试了一遍还是没有办法把图标放入,通过image功能把图片加载进去了,图标也没能出来。

仔细看了右下方的那些功能,没有什么进展。

这个问题困扰了我好久,看了书问了同学也没有会的,很头疼。

一直想着它的时候没有进展,脑袋像堵住了一样不灵活。

下午写日志的时候突然发现可以用SpeedButton控件添加图片去XX,一下就找到了我要的答案,通过右下方的Glyph来选择电脑中的图片,而且是需要bmp格式的图片,那些截图都是png格式,可能这也是没能成功的原因之一吧。

XX上没有打开之类的小图标,只能去word里截图,把原本的word中相应的功能截图下来。

2014/6/4

在memo框中放入colordialog颜色图标、fontdialog字体图标、opendialog打开图标、savedialog保存图标,查找资料,看看书把简单的打开、保存之类的小的程序编好,调试修改。

2014/6/5

将图片的功能与文字的功能结合起来编程,很多还是有不明白的地方,在书和网上查了些资料,进行调试,发现有的会有好多编程的小毛病,不加分号或多加分号,输入法没有改过来。

2014/6/6

对于,昨天遇到的困难,想了很多。

今天老师是来看做的情况,我去一班那边看了下,老师说可以添加些图片像qq表情之类的,然后回来查了下资料,看了些网上的东西。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 文学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1