VB文本编辑器设计报告

合集下载

VB课程设计报告---文本编辑器

VB课程设计报告---文本编辑器

VB课程设计报告——文本编辑器学院名称:计算机学院学生姓名:专业名称:计算机科学与技术班级:一、课程设计题目用Visual Basic程序设计语言编写一个简易的文本编辑器要求:有最基本的文本编辑功能,包括复制、剪切、粘贴、字体设置、背景颜色设置、字体颜色设置;同时拥有文本管理功能,包括打开文件、保存文件;以及完整的系统运行退出等功能,所有的操作可选择设定的快捷键。

二、课程设计目的(1)目标:实现类似与WINDOWS平台下的记事本程序。

(2)涉及功能:新建、打开、保存、另存为、退出、编辑、撤销、复制、粘贴、剪切、删除、查找、全选、打印、格式、字体、颜色、查看、状态栏、帮助、关于等三、课程设计说明1创建应用程序界面2设置属性3编写代码4保存应用程序5调试,运行应用程序6生成可执行文件四、源代码Dim filecount As IntegerDim inputdata As StringDim TargetPosition As IntegerDim pos As IntegerDim targey As StringDim neirong As StringPrivate Sub A_Click()On Error Resume Nextcmndlg1.Filter = "文本文件|*.txt"cmndlg1.CancelError = Truecmndlg1.Action = 2Open cmndlg1.FileName For Output As #1Print #1, Text1.TextClose #1End SubPrivate Sub C_Click()End SubPrivate Sub D_Click()End SubPrivate Sub Form_Load()Text1.Text = ""Text1.Left = 0Text1.Top = 550Text1.Width = Form1.ScaleWidthText1.Height = Form1.ScaleHeightmnucut.Enabled = Falsemnucopy.Enabled = Falsemnudelete.Enabled = Falsemnuselectall.Enabled = Falsemnupaste.Enabled = Truemnuleft.Checked = TrueEnd SubPrivate Sub Form_Resize()'如果窗体不处于最小化text1状态,改变text1大小以适应窗体大小变化If Form1.WindowState <> 1 ThenText1.Width = Form1.Width - 120If Form1.Height < 1200 ThenForm1.Height = 1200End IfText1.Height = Form1.Height - 1350End IfEnd SubPrivate Sub Form_Unload(Cancel As Integer)Dim msg As IntegerIf Text1.Text <> neirong Thenmsg = MsgBox(" 内容已被修改,是否保存文件", 48 + vbYesNoCancel, "提示")If msg = vbYes ThenOn Error GoTo Errcmndlg1.DialogTitle = "保存文件"cmndlg1.Filter = "文本文件|*.txt"cmndlg1.CancelError = Truecmndlg1.ShowSaveOpen cmndlg1.FileName For Output As #1Print #1, Text1.TextClose #1Err:If Err.Number = cdlCancel ThenCancel = TrueEnd IfElseIf msg = vbNo ThenEndElseIf msg = vbCancel ThenCancel = TrueEnd IfElseEndEnd IfEnd SubPrivate Sub mnucopy_Click() '复制利用SetText 方法,将选中的文本放入剪贴板上Clipboard.SetText Text1.SelTextPrivate Sub mnucut_Click() '剪切Clipboard.SetText Text1.SelTextText1.SelText = ""End SubPrivate Sub mnudelete_Click() '删除Text1.SelText = ""End SubPrivate Sub mnuedit_Click() '编辑菜单项代码' 如果文本框中没有选中的内容,则剪切\复制\删除和粘贴菜单无效,否则有效If Text1.SelLength <> 0 Thenmnucut.Enabled = Truemnucopy.Enabled = Truemnudelete.Enabled = Truemnupaste.Enabled = TrueElsemnucut.Enabled = Falsemnucopy.Enabled = Falsemnudelete.Enabled = FalseEnd IfEnd SubPrivate Sub mnuexit_Click() '退出EndEnd SubPrivate Sub mnufind_Click() '查找FindText 1mnuNext.Enabled = TrueEnd SubPrivate Sub mnufont_Click() '字体On Error GoTo A:cmndlg1.Flags = cdlCFBoth Or cdlCFEffectscmndlg1.ShowFontIf cmndlg1.FontName > "" ThenText1.FontName = cmndlg1.FontNameText1.FontSize = cmndlg1.FontSizeText1.FontBold = cmndlg1.FontBoldText1.FontItalic = cmndlg1.FontItalicText1.FontStrikethru = cmndlg1.FontStrikethru Text1.FontUnderline = cmndlg1.FontUnderline Text1.FontBold = cmndlg1.FontBoldText1.ForeColor = cmndlg1.ColorA:If Err.Number < 0 ThenExit SubEnd IfEnd SubPrivate Sub mnufontcolor_Click() '字体颜色cmndlg1.ShowColorText1.ForeColor = cmndlg1.ColorEnd SubPrivate Sub mnuleft_Click() '左对齐Text1.Alignment = 0mnuleft.Checked = Truemnuright(1).Checked = Falsemnuright(2).Checked = FalseEnd SubPrivate Sub mnunew_Click() '新建Text1.Text = ""End SubPrivate Sub FindTex(ByVal start_at As Integer) targey = targeypos = InStr(start_at, Text1.Text, targey)If pos > 0 Then '找到了匹配字符串TargetPosition = posText1.SelStart = TargetPosition - 1'选中找到的字符串Text1.SelLength = Len(targey)Text1.SetFocusElse '没有找到匹配的字符串MsgBox "没找到匹配的字符串", 48, "提示"Text1.SetFocusEnd IfEnd SubPrivate Sub mnuNext_Click() '查找下一个FindTex TargetPosition + 1End SubPrivate Sub mnuopen_Click() '打开Dim inputdata As StringOn Error GoTo nofilecmndlg1.Filter = "文本文件|*.txt"cmndlg1.CancelError = Truecmndlg1.ShowOpenText1.Text = ""If cmndlg1.FileName <> "" ThenOpen cmndlg1.FileName For Input As #1Do While Not EOF(1)Line Input #1, inputdataText1.Text = Text1.Text & inputdata & vbCrLoopClose #1End IfExit Subnofile:If Err.Number = 32755 Then Exit SubEnd SubPrivate Sub FindText(ByVal start_at As Integer)'获取用户输入的要查找的字符串targey = InputBox("请输入要查找的内容", "查找")pos = InStr(start_at, Text1.Text, targey)If pos > 0 Then '找到了匹配字符串TargetPosition = posForm1.Text1.SelStart = TargetPosition - 1'选中找到的字符串Form1.Text1.SelLength = Len(targey)Form1.Text1.SetFocusElse '没有找到匹配的字符串MsgBox "没找到匹配的字符串", 48, "提示"Form1.Text1.SetFocusEnd IfEnd SubPrivate Sub mnupaste_Click() '粘贴用GetText1 方法,将剪切板中的内容粘贴到光标所在位置Text1.SelText = Clipboard.GetText()End SubPrivate Sub mnuprint_Click() '打印On Error Resume Nextcmndlg1.ShowPrinterPrinter.Copies = cmndlg1.CopiesPrinter.Print Text1.TextEnd SubPrivate Sub mnuright_Click(Index As Integer) '右对齐\居中菜单代码Select Case IndexCase 1Text1.Alignment = 1mnuleft.Checked = Falsemnuright(1).Checked = Truemnuright(2).Checked = FalseCase 2Text1.Alignment = 2mnuleft.Checked = Falsemnuright(1).Checked = Falsemnuright(2).Checked = TrueEnd SelectEnd SubPrivate Sub mnusave_Click() '保存On Error Resume Nextcmndlg1.DialogTitle = "保存文件"cmndlg1.Filter = "文本文件|*.txt"cmndlg1.CancelError = Truecmndlg1.ShowSaveOpen cmndlg1.FileName For Output As #1Print #1, Text1.TextClose #1End SubPrivate Sub mnuselectall_Click() '全选Text1.SelStart = 0Text1.SelLength = Len(Text1.Text)End SubPrivate Sub Text1_Change()If Text1.Text = "" Thenmnufind.Enabled = FalsemnuNext.Enabled = FalseElsemnufind.Enabled = Truemnuselectall.Enabled = TrueEnd IfEnd SubPrivate Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case ButtonCase "新建"Call mnunew_ClickCase "打开"Call mnuopen_ClickCase "剪切"Call mnucut_ClickCase "复制"Call mnucopy_ClickCase "粘贴"Call mnupaste_ClickCase "保存"Call mnusave_ClickCase "查找"Call mnufind_ClickEnd SelectEnd SubPrivate Sub tre_Click()Shell ("notepad 使用说明.txt")End SubPrivate Sub xufeng_Click()Form2.Visible = TrueEnd Sub五、运行结果保存功能查找功能打开功能颜色修改功能字体修改功能七、心得体会作为一名计算机专业的学生,在接触了C语言、数据结构与C++课程后,对计算机语言有了一定的兴趣,于是在这个学期我毫不犹豫的选择了VB课程(算法与程序设计)。

VB-文本编辑器

VB-文本编辑器

VB-文本编辑器一、界面设计程序运行的界面:二、代码设计Dim ex As BooleanDim savepath As StringPrivate Sub building_Click()If ex Thena = MsgBox("是否保存?", vbYesNo + vbQuestion)If a = 6 ThenIf savepath <> "" ThenOpen savepath For Output As #1Print #1, Text1.TextClose #1Text1 = ""ex = FalseElseCommonDialog1.FileName = "文档1.txt"CommonDialog1.DefaultExt = "txt"CommonDialog1.Action = 2savepath = CommonDialog1.FileNameOpen CommonDialog1.FileName For Output As #1Print #1, Text1.TextClose #1Text1 = ""ex = FalseEnd IfEnd IfElseText1 = ""ex = FalseEnd IfEnd SubPrivate Sub exit_Click()If ex Thena = MsgBox("是否保存?", vbYesNoCancel + vbQuestion)If a = 6 ThenIf savepath <> "" ThenOpen savepath For Output As #1Print #1, Text1.TextClose #1EndElseCommonDialog1.FileName = "文档1.txt"CommonDialog1.DefaultExt = "txt"CommonDialog1.Action = 2savepath = CommonDialog1.FileNameOpen CommonDialog1.FileName For Output As #1Print #1, Text1.TextClose #1ex = FalseEnd IfElseIf a = 7 ThenEndEnd IfElseEndEnd IfEnd SubPrivate Sub Form_Resize()Form1.Width = 12000Form1.Height = 7000Form1.Top = 2000Form1.Left = 3000Text1.Left = 0Text1.Top = 0Text1.Width = Form1.Width - 300Text1.Height = Form1.Height - 1000End SubPrivate Sub open_Click()CommonDialog1.Action = 1Text1 = ""If CommonDialog1.FileName <> "" ThenOpen CommonDialog1.FileName For Input As #1 Do While Not EOF(1)Line Input #1, inputdataText1 = Text1 + inputdata + vbCrLfLoopClose #1savepath = CommonDialog1.FileNameex = FalseText1.SelStart = Len(Text1)End IfEnd SubPrivate Sub save_Click()If savepath <> "" ThenOpen savepath For Output As #1Print #1, Text1.TextClose #1ex = FalseElseCommonDialog1.FileName = "文档1.txt"CommonDialog1.DefaultExt = "txt"CommonDialog1.Action = 2savepath = CommonDialog1.FileNameOpen CommonDialog1.FileName For Output As #1 Print #1, Text1.TextClose #1ex = FalseEnd IfEnd SubPrivate Sub saves_Click()CommonDialog1.FileName = "文档1.txt" CommonDialog1.DefaultExt = "txt" CommonDialog1.Action = 2savepath = CommonDialog1.FileNameOpen CommonDialog1.FileName For Output As #1Print #1, Text1.TextClose #1ex = FalseEnd SubPrivate Sub Text1_Change()ex = TrueEnd Sub。

用VB做文本编辑器

用VB做文本编辑器

好了,其它的菜单项以后再根据需要添加。现在进入:
步骤三:编写代码。
'声明查找变量 Dim sFind As String '声明文件类型 Dim FileType, FiType As String
'初始化程序 Private Sub Form_Load() '设置程序启动时的大小 Me.Height = 6000 Me.Width = 9000 End Sub
意思就是做个记事本吧 看下面的 用 VB 做一个记事本实在不很复杂,我们完全可以通过向导来很方便地做出来。但本文只打算 讨论用手动方法制作记事本,旨在向 VB 初学者展示:学 VB 原来是如此容易! 通过阅读、研究本文并按本文所述进行尝试,初学者将学到很多东西,如怎样使用 RichText 控件来打开和保存文件,怎样制作菜单、工具栏和状态栏以及如何对其编写代码等。
'关于 Private Sub mnuAbout_Click() MsgBox "超级记事本 Ver1.0 版权所有(C) 2001 土人",vbOKOnly,"关于" End Sub
'设置弹出式菜单(即在编辑框中单击鼠标右键时弹出的动态菜单) Private Sub RichTextBox1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then PopupMenu mnuEdit, vbPopupMenuLeftAlign Else Exit Sub End If End Sub
'保存文件 Private Sub mnuSave_Click() CommonDialog1.Filter = " 文 本 文 档 (*.txt)|*.txt|RTF 文 档 (*.rtf)|*.rtf| 所 有 文 件 (*.*)|*.*" CommonDialog1.ShowSave FileType = CommonDialog1.FileTitle FiType = LCase(Right(FileType, 3)) FileName = CommonDialog1.FileName Select Case FiType Case "txt" RichTextBox1.SaveFile FileName, rtfText Case "rtf" RichTextBox1.SaveFile FileName, rtfRTF Case "*.*" RichTextBox1.SaveFile FileName End Select Me.Caption = "超级记事本:" & FileName End Sub

利用VB.NET设计文本编辑器

利用VB.NET设计文本编辑器

利用设计文本编辑器
范敏
【期刊名称】《韩山师范学院学报》
【年(卷),期】2009(030)003
【摘要】阐述了利用设计文本编辑器的过程,展示了对控件的综合应用及利用进行程序设计的基本步骤.该编辑器在界面上拥有Windows窗体,功能上可以很方便地对文本进行编辑.该文本编辑器的最大优点是体积小、功能全、方便快捷.
【总页数】5页(P62-66)
【作者】范敏
【作者单位】青岛恒星职业技术学院信息学院,山东青岛,266100
【正文语种】中文
【中图分类】TP311
【相关文献】
1.利用VB.NET开发平台设计系统界面 [J], 赖裕辉
2.利用设计开发时钟广告 [J], 谭振江;郑浩;曹丽华
3.基于网页平台的移动文本编辑器的设计 [J], 姜福成
4.利用设计LED电子广告牌 [J], 曹丽华;谭振江
5.基于VB的文本编辑器设计 [J], 戴青云
因版权原因,仅展示原文概要,查看原文内容请购买。

vb文本编辑器设计报告

vb文本编辑器设计报告

文本编辑器设计报告学院土木工程学院班级c106 学号107101 姓名庄潮辉成绩一、设计思路1.要达到的目的1.培养综合利用VB语言进行程序设计的能力,主要是利用VB的标准控件和文件操作进行设计。

2.掌握文件的读、写,文本框和命令按钮的使用。

2.关键问题的解决1.单击“打开文件”按钮,在TextBox控件中打开一个文本文件并显示。

方法:使用顺序文件的读操作。

2.单击“查找与替换”按钮,可以在文本中查找或替换指定的第一个内容;单击“查找下一个”按钮,可连续进行给定内容的查找与替换。

方法:使用字符串的不等长替换方法。

3.单击“保存文件”按钮,可以将编辑后的文本文件保存到指定的位置。

方法:使用顺序文件的写操作。

4.编辑框只读”按钮的功能是控制能否对文本框中的内容进行编辑。

要想结束程序,应单击“退出”按钮。

方法:用程序设置文本框的locked属性。

5. 创新中的改变字体字号可行6. 创新中滚动条控制颜色并给文字着色可行二、模块之间的调用关系,或程序流程图二、部分程序关键源代码及注释1.打开文件:sFile = InputBox("请输入要打开的文件名及扩展名:", "打开文件")If Dir(sfile) <> "" Then‘使用freefile函数得到空文件号Fileno=freefileForm1.Caption = "文本编辑器——" & sfile‘使用input函数读取顺序文件Open App.Path & "\" & sfile For Input As #filenoDo While Not EOF(fileno)Input #fileno, mystrText1.Text = Text1.Text & mystrLoopClose #fileno2.文件保存:‘使用freefile函数得到空文件号fileno = FreeFile‘使用CommonDialog控件CommonDialog1.Filter = "txt文件(*.txt)|*.txt"‘调入保存对话框CommonDialog1.Action = 2Open (CommonDialog1.FileName) For Output As #filenoPrint #fileno, Text1.TextClose #fileno3.查找与替换:Dim a As Integer, t As String, e As Stringt = Text1.Texte = ""‘找出Form2.Text1.Text在t中第一个出现位置a = InStr(1, t, Form2.Text1.Text)If a = 0 ThenMsgBox "字符串没发现", vbOKOnly, "替换提示"Else拼接第一个出现位置左边的字符串e = e & Left(t, a - 1)e = e & Form2.Text2.Text‘将字符串t变为出现位置右边的字符串t = Right(t, Len(t) - a - Len(Form2.Text1.Text) + 1)e = e & tText1.Text = eEnd If4.字体与字号设置‘在load事件中,将各列表项加入到字体组合框cobom1,字号组合框cobom2中‘设置初始字体和字号Private Sub form_load()Combo1.AddItem "宋体"Combo1.AddItem "黑体"Combo1.AddItem "楷体_GB2312"Combo1.AddItem "仿宋_GB2312"Combo2.AddItem 10Combo2.AddItem 12Combo2.AddItem 16Combo2.AddItem 20Text1.FontName = "宋体"Text1.FontSize = 20End Sub‘字体组合框cobom1的单击事件,设置字体Private Sub Combo1_click()Select Case Combo1.ListIndexCase 0Text1.FontName = "宋体"Case 1Text1.FontName = "黑体"Case 2Text1.FontName = "楷体_GB2312"Case 3Text1.FontName = "仿宋_GB2312"End SelectEnd Sub‘字号组合框cobom2的单击事件,设置字号Private Sub Combo2_click()Text1.FontSize = Combo2.TextEnd Sub‘字号组合框cobom2的keypress事件,检测回车键并设置字号Private Sub Combo2_keypress(keyascii As Integer)If keyascii = 13 ThenText1.FontSize = Combo2.TextEnd IfEnd Sub‘利用滚动条设置三种基色Private Sub VScroll1_Change()Text2.BackColor = RGB(VScroll1.Value, 0, 0)Text5.BackColor = RGB(VScroll1.Value, VScroll2.Value, VScroll3.Value) End SubPrivate Sub VScroll2_Change()Text3.BackColor = RGB(0, VScroll2.Value, 0)Text5.BackColor = RGB(VScroll1.Value, VScroll2.Value, VScroll3.Value) End SubPrivate Sub VScroll3_Change()Text4.BackColor = RGB(0, 0, VScroll3.Value)Text5.BackColor = RGB(VScroll1.Value, VScroll2.Value, VScroll3.Value) End Sub三、设计方案的完善及目前存在的问题1.设计方案要完善的地方①文本的编辑功能有限,对文件的操作方法过于局限。

vb课程设计文本编辑器

vb课程设计文本编辑器

*****大学课程设计文本编辑器单位 **** 分院(系)专业 ****学号 ****学生姓名 *****指导教师 ***完成日期 ** 年 * 月* 日摘要自今年开学以来,我一直在学校学习vb程序设计,在为期半年的学习时间中,经历了一些软件设计开发的实践,在这些设计中学到许多书本上不能体会到的知识,下面将要介绍的一个设计,就是我在上课程设计时学到的,从老师的课程要求从而确定设计要求、项目的具体设计到项目的具体代码实施,在这个项目设计阶段,主要由我和我所在组的成员完成,他们对vb有着不少的经验,另外老师在这次项目开发中对我们起到了指导性的作用,使得我钦佩不已,下面就详细的说一下我们开发的这个项目。

一.设计目的自从接到我们要上课程设计课开始,我们知道word的文本编辑器,当然众所周知word是当今最流行最常用的文本编辑器,用来日常对工作生活中的文本进行编辑,它的功能强大,也在软件设计业成为了一种流行的标准。

我们这次设计的就是以word的一些基本功能为基础,由于我们的能力有限我们把一些特殊功能删除了,只留下了一些简单的功能例如:剪切、新建、复制、粘贴、查找等。

此次设计课主要是锻炼我们的vb设计能力和思维考虑能力使我们的vb 学习真正的用到实处,无论在将来工作还是学习有着重要作用二设计要求、本系统由两个菜单组成:文件、编辑,界面如图:(1)文件菜单包括:新建、打开、保存、退出。

(2)编辑菜单包括:复制、剪贴、粘贴、字体设置。

要求:1.1人完成2. 利用菜单、工具栏实现上述功能。

应用控件名称:RichTextBox CommonDialog 6.0目录1.选题的意义 --------------------------------52.系统的功能能分 ---------------------------------------72.1系统概述----------------------------------------------------------------72.2系统的构成-------------------------------------------------------------82.3系统的运行环境---------------------------------------------------------92.4设计思路-------------------------------------------------------------------9 3.主要控件功能介绍 ------------------------------------173.1控件功能----------------------------------------------------------------173.2设计的代码--------------------------------------------------------------21 4.总结--------------------------------------------------264.1总结-------------------------------------------------------------------------264.2存在的主要问题----------------------------------------------------------26参考文献-------------------------------------------------26第一章选题的意义V B6.0全称为V i s u a l B a s i c 6.0,是微软公司推出的可视化编程工具M S D N之一,是目前世界上使用最广泛的程序开发工具。

VB文本编辑器设计报告

VB文本编辑器设计报告

课程设计报告课程:Visual Basic 程序设计课题:文本编辑器(易记本)专业:计算机信息管理班级:学号:姓名:@一路偏向北教师:2011-12-23一、课程设计目的通过一学期的Visual Basic 程序设计学习,以及平时的上机实验,初步掌握了VB程序设计的各种方法,学会了编写最基本的VB程序;对于完整的VB程序设计来讲是很不足的,平时掌握的只是单独的窗体(Form)程序编写,以及各种简单控件的使用,没有做到很好连贯性,所以有必要做一次完整的VB程序设计,结合所学的基本知识,使用多个窗体自成一套系统,加上各种控件的综合运用,初步设计一个合格的VB应用程序;这样在巩固VB所学的同时,更好地学会程序设计的一些思想和方法,对于以后的编程学习或是工作有重要的实践意义。

二、题目及简介文本编辑器模仿Windows自带的本文编辑器,要求:做到有下拉式菜单栏,有最基本的文本编辑功能,包括复制、剪切、粘贴、全选、查找;同时拥有文本的管理功能,其中包括新建文本、打开、保存;以及完整的运行退出等系统应用功能,所有操作可选择设定快捷键,更快更方便地使用程序,同时对于一个小程序而言,可给出基本的使用说明以及相关信息。

提示:注意使用消息框,以及使用右击弹出式菜单,注意程序的完整性可可用性。

三、设计说明题目为文本编辑器,即是最基本的文本编辑程序,首先必须做好文本编辑器本身的功能,然后对其完善,做成一个完整的小程序功能设计说明:功能是这个文本编辑器的核心内容,也就是程序的作用,它是用来做什么的;本程序就是用来编写文本的,编写过程中要利用到窗体(Form)一个,控件包括:RichTextBox1(超文本框)、CommonDialog(通用对话框),以及InputBox(消息框)、菜单编辑器等,。

要做的工作就是编写代码把这些控件和窗体等结合为一体,使得程序能够成为一体,顺畅运行。

本次设计在按照题目要求的前提下,为了完整地展示一个应用程序,在最初就设计为最基本的文本的编辑器,所以取名为“易记本”,就是简易记事本的简称,然后加入图标,在程序完成之后还进行了大包操作,得到应用程序的安装文件,最后安装在电脑上运行使用。

VB文本编辑器设计报告

VB文本编辑器设计报告

文本编辑器设计报告学院班级学号姓名成绩一、设计思路1.要达到的目的①单击“打开文件”按钮,在TextBox控件中打开一个文本文件并显示,为了阅读者的方便,在文本框中要加入水平和垂直滚动条。

②单击“查找与替换”按钮,可以在文本中查找或替换指定的第一个内容;单击“查找下一个”按钮,可连续进行给定内容的查找与替换。

③单击“保存文件”按钮,可以将编辑后的文本文件保存到指定的位置。

④“编辑框只读”按钮的功能是控制能否对文本框中的内容进行编辑。

⑤要想结束程序,应单击“退出”按钮。

2.关键问题的解决①打开文件并显示及滚动条的添加成功解决。

②查找与替换功能尚未完全成功③保存文件问题完全解决④编辑框按钮功能可用⑤退出可执行⑥创新中的改变字体字号可行⑦创新中滚动条控制颜色并给文字着色可行二、模块之间的调用关系,或程序流程图三、部分程序关键源代码及注释1.文本文件的读入sFile = InputBox("请输入要打开的文件名及扩展名:", "打开文件")If Dir(sFile) <> "" ThenOpen App.Path & "\" & sFile For Input As #1temp = StrConv(InputB(LOF(1), #1), vbUnicode)EditTXT.Text = tempClose #1EditFrm.Caption = "文本编辑器— " & sFileElseMsgBox "指定的文件" & sFile & "未找到!", 48, "文件打开"End If说明:对于文本文件中包含的字节数据要使用InputB 函数。

对于InputB 来说,number 指定的是要返回的字节个数,而不是要返回的字符个数。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计报告
课程:Visual Basic 程序设计
课题:文本编辑器(易记本)
专业:计算机信息管理
班级:
学号:
姓名:@一路偏向北
教师:
2011-12-23
一、课程设计目的
通过一学期的Visual Basic 程序设计学习,以及平时的上机实验,初步掌握了VB程序设计的各种方法,学会了编写最基本的VB程序;对于完整的VB程序设计来讲是很不足的,平时掌握的只是单独的窗体(Form)程序编写,以及各种简单控件的使用,没有做到很好连贯性,所以有必要做一次完整的VB程序设计,结合所学的基本知识,使用多个窗体自成一套系统,加上各种控件的综合运用,初步设计一个合格的VB应用程序;这样在巩固VB所学的同时,更好地学会程序设计的一些思想和方法,对于以后的编程学习或是工作有重要的实践意义。

二、题目及简介
文本编辑器
模仿Windows自带的本文编辑器,要求:做到有下拉式菜单栏,有最基本的文本编辑功能,包括复制、剪切、粘贴、全选、查找;同时拥有文本的管理功能,其中包括新建文本、打开、保存;以及完整的运行退出等系统应用功能,所有操作可选择设定快捷键,更快更方便地使用程序,同时对于一个小程序而言,可给出基本的使用说明以及相关信息。

提示:注意使用消息框,以及使用右击弹出式菜单,注意程序的完整性可可用性。

三、设计说明
题目为文本编辑器,即是最基本的文本编辑程序,首先必须做好文本编辑器本身的功能,然后对其完善,做成一个完整的小程序功能设计说明:功能是这个文本编辑器的核心内容,也就是程序的作用,它是用来做什么的;本程序就是用来编写文本的,编写过程中要利用到窗体(Form)一个,控件包括:RichTextBox1(超文本框)、CommonDialog(通用对话框),以及InputBox(消息框)、菜单编辑器等,。

要做的工作就是编写代码把这些控件和窗体等结合为一体,使得程序能够成为一体,顺畅运行。

本次设计在按照题目要求的前提下,为了完整地展示一个应用程序,在最初就设计为最基本的文本的编辑器,所以取名为“易记本”,就是简易记事本的简称,然后加入图标,在程序完成之后还进行了大包操作,得到应用程序的安装文件,最后安装在电脑上运行使用。

四、源代码(加注释)
Dim sfind As String
Dim FileType, FiType As String
Private Sub Form_Load()
= 7500
= 5000
End Sub
'设置文本编辑框的位置和大小
Private Sub Form_Resize()
On Error Resume Next '遇到出错时处理
= 20
= 20
= ScaleHeight - 40
= ScaleWidth - 40
End Sub
'文件菜单下的新建文件
Private Sub mnuNew_Click()
= "" '新建文本时清空文本框
FileName = "未命名"
= FileName
End Sub
'文件菜单下的打开文件
Private Sub mnuOpen_Click()
= "文本文档(*.txt)|*.txt|RTF文档(*.rtf)|*.rtf|所有文件(*.*)|*.*"
= "" '打开新的文件时清空原来的文本框
FileName =
FileName
= "易记本:" & FileName
End Sub
'文件菜单下的保存文件
Private Sub mnuSave_Click()
= "文本文档(*.txt)|*.txt|RTF文档(*.rtf)|*.rtf|所有文件(*.*)|*.*"
FileType =
FiType = LCase(Right(FileType, 3)) FileName =
Select Case FiType
Case "txt"
FileName, rtfText
Case "rtf"
FileName, rtfRTF
Case "*.*"
FileName
End Select
= "易记本:" & FileName
End Sub
'文件菜单下的退出
Private Sub mnuExit_Click()
End
End Sub
'编辑菜单下的复制
Private Sub mnuCopy_Click()
End Sub
'编辑菜单下的剪切
Private Sub mnuCut_Click()
= ""
End Sub
'编辑菜单下的全选
Private Sub mnuSelectAll_Click()
= 0
= Len
End Sub
'文件菜单下的粘贴
Private Sub mnuPaste_Click()
=
End Sub
'搜索菜单下的查找
Private Sub mnuFind_Click()
sfind = InputBox("请输入要查找的字符:", "查找内容") sfind
End Sub
'搜索菜单下的继续查找
Private Sub mnuFindOn_Click()
= + + 1
sfind, , Len(RichTextBox1)
End Sub
'帮助菜单下的使用说明
Private Sub mnuUsage_Click()
On Error GoTo handler
"", rtfText '文件存入程序所在文件夹中
= "易记本:" & "使用说明"
Exit Sub
handler:
MsgBox "使用说明文档可能已经被移除,请与作者联系。

", vbOKOnly, " 错误信息"
End Sub
'帮助菜单下的关于,查询软件的归属信息
Private Sub mnuAbout_Click()
MsgBox "易记本版权所有(C) DXL", vbOKOnly, "关于"
End Sub
'设置弹出式菜单(即在编辑框中单击鼠标右键时弹出的动态菜单)
Private Sub RichTextBox1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 2 Then
PopupMenu mnuEdit, vbPopupMenuLeftAlign
Else
Exit Sub
End If
End Sub
五、运行结果
程序运行初始窗口,易记本
易记本菜单
使用说明及右击弹出式菜单
桌面
查找及打开功能
六、体会总结
1.关与本次课程设计,总体来说不是很难,当然是仅限于这个题目
来说,通过实践,感觉到这一学期的VB学习不是很深入,很多真正需要掌握的东西还没学会,或是没学好,原因是平时理论学习不够,没用真正理解,其次就是实践太少,不能熟练地使用VB开发环境。

2.具体说文本编辑器的设计,首先是控件的使用要注意,例如不能
使用平时一般的Text文本框,因为其只适用于一般的文本显示,使用RichTextBox,可拥有文本的完整功能,不用再添加滚动条等控件,而是使用其自带的滚动条;其实是菜单的设计,应注意菜单的名称书写,不能出现重复现象,否则要使用索引,不仅增加麻烦更不利于程序编写,然后编写代码的时候应注意必须与菜单中的名字一一对应,否则会出现错误;最后要注意程序的完整性以及实用性、便捷性,能够有友好的UI设计,给用户最好的体验。

总之,通过本次课程设计,不仅找到了学习的不足,更体会到实践的重要性,所有的语言设计课程都必须通过实践来掌握,同时要建立在掌握理论知识的基础上,只有这两者紧密结合起来才能真正学号一门语言设计课程。

相关文档
最新文档