VB课程设计报告.docx

上传人:b****8 文档编号:29483795 上传时间:2023-07-23 格式:DOCX 页数:17 大小:203.80KB
下载 相关 举报
VB课程设计报告.docx_第1页
第1页 / 共17页
VB课程设计报告.docx_第2页
第2页 / 共17页
VB课程设计报告.docx_第3页
第3页 / 共17页
VB课程设计报告.docx_第4页
第4页 / 共17页
VB课程设计报告.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

VB课程设计报告.docx

《VB课程设计报告.docx》由会员分享,可在线阅读,更多相关《VB课程设计报告.docx(17页珍藏版)》请在冰豆网上搜索。

VB课程设计报告.docx

VB课程设计报告

VB课程设计报告

——文本编辑器

 

学院名称

计算机学院

学生姓名

专业名称

计算机科学与技术

班级

 

一、课程设计题目

用VisualBasic程序设计语言编写一个简易的文本编辑器

要求:

有最基本的文本编辑功能,包括复制、剪切、粘贴、字体设置、背景颜色设置、字体颜色设置;同时拥有文本管理功能,包括打开文件、保存文件;以及完整的系统运行退出等功能,所有的操作可选择设定的快捷键。

二、课程设计目的

(1)目标:

实现类似与WINDOWS平台下的记事本程序。

(2)涉及功能:

新建、打开、保存、另存为、退出、编辑、撤销、复制、粘贴、剪切、删除、查找、全选、打印、格式、字体、颜色、查看、状态栏、帮助、关于等

三、课程设计说明

1创建应用程序界面

2设置属性

3编写代码

4保存应用程序

5调试,运行应用程序

6生成可执行文件

四、源代码

DimfilecountAsInteger

DiminputdataAsString

DimTargetPositionAsInteger

DimposAsInteger

DimtargeyAsString

DimneirongAsString

PrivateSubA_Click()

OnErrorResumeNext

cmndlg1.Filter="文本文件|*.txt"

cmndlg1.CancelError=True

cmndlg1.Action=2

Opencmndlg1.FileNameForOutputAs#1

Print#1,Text1.Text

Close#1

EndSub

PrivateSubC_Click()

EndSub

PrivateSubD_Click()

EndSub

 

PrivateSubForm_Load()

Text1.Text=""

Text1.Left=0

Text1.Top=550

Text1.Width=Form1.ScaleWidth

Text1.Height=Form1.ScaleHeight

mnucut.Enabled=False

mnucopy.Enabled=False

mnudelete.Enabled=False

mnuselectall.Enabled=False

mnupaste.Enabled=True

mnuleft.Checked=True

EndSub

PrivateSubForm_Resize()

'如果窗体不处于最小化text1状态,改变text1大小以适应窗体大小变化

IfForm1.WindowState<>1Then

Text1.Width=Form1.Width-120

IfForm1.Height<1200Then

Form1.Height=1200

EndIf

Text1.Height=Form1.Height-1350

EndIf

EndSub

 

PrivateSubForm_Unload(CancelAsInteger)

DimmsgAsInteger

IfText1.Text<>neirongThen

msg=MsgBox("内容已被修改,是否保存文件",48+vbYesNoCancel,"提示")

Ifmsg=vbYesThen

OnErrorGoToErr

cmndlg1.DialogTitle="保存文件"

cmndlg1.Filter="文本文件|*.txt"

cmndlg1.CancelError=True

cmndlg1.ShowSave

Opencmndlg1.FileNameForOutputAs#1

Print#1,Text1.Text

Close#1

Err:

IfErr.Number=cdlCancelThen

Cancel=True

EndIf

ElseIfmsg=vbNoThen

End

ElseIfmsg=vbCancelThen

Cancel=True

EndIf

Else

End

EndIf

EndSub

PrivateSubmnucopy_Click()'复制利用SetText方法,将选中的文本放入剪贴板上

Clipboard.SetTextText1.SelText

EndSub

PrivateSubmnucut_Click()'剪切

Clipboard.SetTextText1.SelText

Text1.SelText=""

EndSub

PrivateSubmnudelete_Click()'删除

Text1.SelText=""

EndSub

PrivateSubmnuedit_Click()'编辑菜单项代码

'如果文本框中没有选中的内容,则剪切\复制\删除和粘贴菜单无效,否则有效

IfText1.SelLength<>0Then

mnucut.Enabled=True

mnucopy.Enabled=True

mnudelete.Enabled=True

mnupaste.Enabled=True

Else

mnucut.Enabled=False

mnucopy.Enabled=False

mnudelete.Enabled=False

EndIf

EndSub

PrivateSubmnuexit_Click()'退出

End

EndSub

PrivateSubmnufind_Click()'查找

FindText1

mnuNext.Enabled=True

EndSub

PrivateSubmnufont_Click()'字体

OnErrorGoToA:

cmndlg1.Flags=cdlCFBothOrcdlCFEffects

cmndlg1.ShowFont

Ifcmndlg1.FontName>""Then

Text1.FontName=cmndlg1.FontName

EndIf

Text1.FontSize=cmndlg1.FontSize

Text1.FontBold=cmndlg1.FontBold

Text1.FontItalic=cmndlg1.FontItalic

Text1.FontStrikethru=cmndlg1.FontStrikethru

Text1.FontUnderline=cmndlg1.FontUnderline

Text1.FontBold=cmndlg1.FontBold

Text1.ForeColor=cmndlg1.Color

A:

IfErr.Number<0Then

ExitSub

EndIf

EndSub

PrivateSubmnufontcolor_Click()'字体颜色

cmndlg1.ShowColor

Text1.ForeColor=cmndlg1.Color

EndSub

PrivateSubmnuleft_Click()'左对齐

Text1.Alignment=0

mnuleft.Checked=True

mnuright

(1).Checked=False

mnuright

(2).Checked=False

EndSub

PrivateSubmnunew_Click()'新建

Text1.Text=""

EndSub

PrivateSubFindTex(ByValstart_atAsInteger)

targey=targey

pos=InStr(start_at,Text1.Text,targey)

Ifpos>0Then'找到了匹配字符串

TargetPosition=pos

Text1.SelStart=TargetPosition-1

'选中找到的字符串

Text1.SelLength=Len(targey)

Text1.SetFocus

Else'没有找到匹配的字符串

MsgBox"没找到匹配的字符串",48,"提示"

Text1.SetFocus

EndIf

EndSub

PrivateSubmnuNext_Click()'查找下一个

FindTexTargetPosition+1

 

EndSub

PrivateSubmnuopen_Click()'打开

DiminputdataAsString

OnErrorGoTonofile

cmndlg1.Filter="文本文件|*.txt"

cmndlg1.CancelError=True

cmndlg1.ShowOpen

Text1.Text=""

Ifcmndlg1.FileName<>""Then

Opencmndlg1.FileNameForInputAs#1

DoWhileNotEOF

(1)

LineInput#1,inputdata

Text1.Text=Text1.Text&inputdata&vbCr

Loop

Close#1

EndIf

ExitSub

nofile:

IfErr.Number=32755ThenExitSub

EndSub

PrivateSubFindText(ByValstart_atAsInteger)

'获取用户输入的要查找的字符串

targey=InputBox("请输入要查找的内容","查找")

pos=InStr(start_at,Text1.Text,targey)

Ifpos>0Then'找到了匹配字符串

TargetPosition=pos

Form1.Text1.SelStart=TargetPosition-1

'选中找到的字符串

Form1.Text1.SelLength=Len(targey)

Form1.Text1.SetFocus

Else'没有找到匹配的字符串

MsgBox"没找到匹配的字符串",48,"提示"

Form1.Text1.SetFocus

EndIf

EndSub

PrivateSubmnupaste_Click()'粘贴用GetText1方法,将剪切板中的内容粘贴到光标所在位置

Text1.SelText=Clipboard.GetText()

EndSub

PrivateSubmnuprint_Click()'打印

OnErrorResumeNext

cmndlg1.ShowPrinter

Printer.Copies=cmndlg1.Copies

Printer.PrintText1.Text

EndSub

PrivateSubmnuright_Click(IndexAsInteger)'右对齐\居中菜单代码

SelectCaseIndex

Case1

Text1.Alignment=1

mnuleft.Checked=False

mnuright

(1).Checked=True

mnuright

(2).Checked=False

Case2

Text1.Alignment=2

mnuleft.Checked=False

mnuright

(1).Checked=False

mnuright

(2).Checked=True

EndSelect

EndSub

PrivateSubmnusave_Click()'保存

OnErrorResumeNext

cmndlg1.DialogTitle="保存文件"

cmndlg1.Filter="文本文件|*.txt"

cmndlg1.CancelError=True

cmndlg1.ShowSave

Opencmndlg1.FileNameForOutputAs#1

Print#1,Text1.Text

Close#1

EndSub

PrivateSubmnuselectall_Click()'全选

Text1.SelStart=0

Text1.SelLength=Len(Text1.Text)

EndSub

 

PrivateSubText1_Change()

IfText1.Text=""Then

mnufind.Enabled=False

mnuNext.Enabled=False

Else

mnufind.Enabled=True

mnuselectall.Enabled=True

EndIf

EndSub

PrivateSubToolbar1_ButtonClick(ByValButtonAsMSComctlLib.Button)

SelectCaseButton

Case"新建"

Callmnunew_Click

Case"打开"

Callmnuopen_Click

Case"剪切"

Callmnucut_Click

Case"复制"

Callmnucopy_Click

Case"粘贴"

Callmnupaste_Click

Case"保存"

Callmnusave_Click

Case"查找"

Callmnufind_Click

EndSelect

EndSub

PrivateSubtre_Click()

Shell("notepad使用说明.txt")

EndSub

PrivateSubxufeng_Click()

Form2.Visible=True

EndSub

 

5、运行结果

保存功能

 

 

查找功能

 

 

打开功能

 

 

颜色修改功能

 

字体修改功能

 

 

七、心得体会

作为一名计算机专业的学生,在接触了C语言、数据结构与C++课程后,对计算机语言有了一定的兴趣,于是在这个学期我毫不犹豫的选择了VB课程(算法与程序设计)。

VB程序设计的入门学习并不难,但却是一个十分重要的过程,因为程序设计思想的形成,以及之前学习积累的经验,很快就对VB有了一定的了解。

下面就是我这段时间学习的新的与体会。

我认为作为学习程序设计最重要的一点是要注重理解一些重要的概念.VB程序设计本身并不复杂,翻开一本程序设计学习的书籍,看到的无非就是变量,函数,条件语句,循环语句等概念.但要真正能进行程序设计,需要深入理解这些概念.因此,在程序入门阶段还是应该重视概念的学习.我们学习VB并没有从正常的途径,可以说VB语言相对来说比其他语言简单,从他的语法就可以看出

其次,自己动手编写程序。

程序设计入门阶段要经常自己动手抄写或编写一些小程序,亲自动手进行程序设计是创造性思维应用的体现,是培养逻辑思维的好方法.因此一定要多动手编写程序,而且要从小程序开发开始,逐渐提高写程序的能力.只有不断的从自己的程序中积累经验,从中进步,才能写出好的程序。

程序设计课是高强度的脑力劳动,不是听会的,也不是看会的,而是练会的.只有自己动手,编写一些程序,才会有成就感,进而对课程产生兴趣,学起来才比较从容.动手能力的培养是这门课和以往课程最大的不同之处.重点放在思路,算法,编程构思和程序实现上.语句只是表达工具,要求堂上积极思考,尽量当堂学懂,并做到灵活应用.编程序不像做其它的事情,写程序之前一定要计划周详,把所有的可能性都想到,并想好相应的解决方法,不然思想会很混乱,很容易出现错误。

还有就是编程序最重要的其实是思想,思想确定之后用什么语言或什么方法就简单了,接下来就是设计并写成代码的事情了

好的程序员就是这样一步一步炼成的。

在者,阅读,借签别人设计的好程序。

多看别人设计好的程序代码,包括教材上的例题程序.在读懂别人程序后,要想他为什么这么设计能不能将程序修改完成更多的功能则可以学到别人优秀的东西,帮助自己提高自身水平.

通过这次学习,我越来越喜欢上计算机语言,我相信在计算机语言上会走的更远。

 

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

当前位置:首页 > 考试认证 > 财会金融考试

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

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