中南大学
Central SouthUniversity
C语言课程设计实践
题目名称: 实现一个简单的文本文件
编辑系统
完成人姓名:郑艺颖
专业班级:电气信息类1117班
学号:0909111717
1
摘要
这个文本编辑器的功能类似windows 的记事本,有新建、打开、
保存、退出的文件操作功能,有复制、粘贴、剪切、清除的文件编辑
功能,又有帮助与关于功能菜单。
在主函数main ()中多次调用其他子函数是这个文本编辑器的
最大特点。最主体的子函数莫过于drawmenu ()画出文本编辑器的
功能列表,其他还有各种功能的子函数,如drawmain ()画出整个
del
文本编辑器的主界面,如 ()定义删除功能,在这里就不一一介
绍,详见下面。
2
目录
一、功能设计
……4
二、详细设计
……7
三、运行结果
……34
四、结束语
……41
3
一、功能设计
通过对Windows 自配的记事本的功能研究,并结合老师对本次
课程设计的要求,让用户在我设计完成的文本编辑器中可以通过快捷
和选择菜单项,完成基本的文本编辑和文件处理工作。该文本文件编
辑系统应该至少具备有以下功能模块:文件操作模块、文本编辑模块、
剪切操作模块、菜单控制模块和帮助及其他模块。
(一)文件操作模块
1、新建:新建功能应该要可以不只是单纯地把输入文本框清空,
而且还应该可以智能判断文本框中是否有数据,如果有数据未 保存
或者保存过后又有数据变动,则会弹出提示信息询问是否 保存。新
建功能可以通过选择File菜单上的New 子菜单来实现。
2、打开:打开功能应该要可以通过记事本读入文件。打开功能可以
通过选择File菜单上的Open 子菜单来实现。在文件打开时,保存和
另存为操作中,系统会提示用户输入文件路径及文件名。特别注意的
是,当用户打开一个文件时,指定的文件必须存在,否则系统会报错。
3、保存:保存功能应该要可以直接将文本框中的内容记忆保存。保
存功能可以通过选择File菜单上的Save子菜单来实现。
4、另存为:另存为功能应该要可以将文本框中的内容记忆保存,并
且可以进一步把整个文件保存到指定地方。另存为功能可以通过选择
File菜单上的Saveas子菜单来实现。
5、退出:退出功能应该要可以直接退出文本文件编辑系统。退出功
能可以通过选择File菜单上的Exit 子菜单来实现。
4
(二)文本编辑器模块
1、添加:当光标所在位置及后面没有字符时,系统会以添加的方式
输入字符。
2、插入:当光标所在位置及后面有字符时,系统会以插入的方式输
入字符。
3、删除:用户可以通过Backspace键删除光标前一个字符,也可以
Del
使用 键删除当前位置的字符。
4、选定:用户可以使用左移键 (←)、右移键、上移键、下移键来移
动光标位置。也可以通过Ctrl+左移键 (或右移键)来选定多个字符。
(三)剪贴板操作模块
1、剪切:如果用户要剪切文本以便可以将它移动到其他位置,可通
过Ctrl+X 左移键 (或右移键)先选定文本