VB设计报告李菊Word文件下载.docx
《VB设计报告李菊Word文件下载.docx》由会员分享,可在线阅读,更多相关《VB设计报告李菊Word文件下载.docx(14页珍藏版)》请在冰豆网上搜索。
(5)“查看”中有“状态栏”用于查看当前鼠标处于哪行哪列。
(6)“帮助”中有“关于记事本”,“记事本主题”两个菜单,用于相关查看。
二.设计课题编辑记事本
三.设计目的通过编写记事本,熟悉并掌握所学VB的程序语言,锻炼编程思想,从而触类旁通发挥自己的创造力编辑自己的作品。
是自己的能力得到一定的锻炼。
四.设计要求
(1)记事本文件菜单的新建、打开、保存、另保为、退出功能。
(2)记事本编辑菜单的剪切、复制、粘贴、查找、全选,日期等功能。
(3)记事本格式菜单的字体、字体颜色、功能。
(4)记事本查看菜单的状态栏。
(5)记事本的帮助对话。
五.设计思路及过程
(1)设计思路:
首先绘制界面,其次编辑菜单,按Ctrl+E调出菜单编辑器,我们来做“文件”,“查看”等几个菜单,接着编写各功能模块具体代码。
(2)设计具体过程
1.绘制界面
新建一个标准EXE工程,将其Caption属性改为“超级记事本”,点击Icon属性给它找个合适的Icon图标。
单击菜单“工程”-“部件”,在弹出的“部件”对话框里找到MicrosoftRichTextBox6.0和公共对话框MicrosoftCommonDialog6.0并选中它们,单击“确定”按钮。
这时左边的工具栏上出现了我们刚才新添的两个控件了。
在窗体上绘制RichTextBox和CommnDialog,其中RichTextBox的大小和位置可不用理睬,我们将在代码中处理它,当然,有必要把它的ScrollBar属性设为2-rtfVertical,这样在打开和编辑文件时垂直滚动条才可用。
2.编辑菜单
按ctrl+E调出菜单编辑器,来做如下几个菜单:
(1)文件菜单:
文件(第一层)file,新建(第二层)new,打开(第二层)open
保存(第二层)save,另存为(第二层)lingsave,打印(第二层)print,退出(第二层)exit
(2)编辑菜单:
编辑(第一层)edit,撤销(第二层)cancel,剪切(第二层)qie,
复制(第二层)copy,粘贴(第二层)tie,删除(第二层)delete,查找(第二层)find,全选(第二层)selectall,时间/日期(第二层)date
(3)格式菜单:
格式(第一层)style,自动换行(第二层)autozhuan,字体(第二层)font
(4)查看菜单:
查看(第一层)cha,状态栏(第二层)state
(5)帮助菜单:
帮助(第一层)help,帮助主题(第二层)topic,关于记事本(第二层)about
3.编辑代码
新建:
PrivateSubnewCreate_Click()
s=MsgBox("
是否保存?
"
33,"
我的记事本"
)
Ifs=1Then
DimFileType,FiTypeAsString
CommonDialog1.Filter="
文本文档(*.txt)|*.txt|RTF文档(*.rtf)|*.rtf|所有文件(*.*)|*.*"
CommonDialog1.ShowSave
FileType=CommonDialog1.FileTitle
FiType=LCase(Right(FileType,3))
FileName=CommonDialog1.FileName
SelectCaseFiType
Case"
txt"
RichTextBox1.SaveFileFileName,rtfText
rtf"
RichTextBox1.SaveFileFileName,rtfRTF
*.*"
RichTextBox1.SaveFileFileName
EndSelect
Me.Caption="
我的记事本:
&
FileName
EndIf
Ifs=2Then
RichTextBox1.Text="
'
清空文本框
FileName="
未命名"
Me.Caption=FileName
EndSub
打开:
PrivateSubopen_Click()
CommonDialog1.ShowOpen
RichTextBox1.LoadFileFileName
超级记事本:
保存:
PrivateSubsave_Click()
退出:
PrivateSubEND_Click()
End
剪切:
PrivateSubcut_Click()
IfRichTextBox1.SelLength>
0Then
Clipboard.SetTextRichTextBox1.SelText
RichTextBox1.SelText="
paste.Enabled=True
复制
PrivateSubcopy_Click()
粘贴:
PrivateSubpaste_Click()
RichTextBox1.SelText=Clipboard.GetText
全选:
PrivateSubquanxuan_Click()
RichTextBox1.SelStart=0
RichTextBox1.SelLength=Len(RichTextBox1.Text)
查找:
PrivateSubFIND_Click()
form2.Show
PrivateSubCommand1_Click()
DimconBtnsAsString
DimWAsInteger
ConstconMsgAsString="
找不到所查内容"
DimintRetValAsInteger
DimintFoundPosAsInteger
IfCheck2.Value=vbCheckedThen
W=0
Else
W=1
intFoundPos=InStr(1,form1.txt.Text,Text1.Text,W)
EndIf'
查找字符
IfintFoundPos=0Then'
未找到相应的字符
intRetVal=MsgBox(conMsg,vbDefaultButton2,"
Find"
form1.txt.SelStart=intFoundPos-1'
选择字符长度
form1.txt.SelLength=Len(Text1.Text)
form1.txt.SetFocus'
找出相应字符
查找下一个:
PrivateSubNEXTFIND_Click()
替换:
PrivateSubREPLACE_Click()
Form3.Show
当点击“替换”出现以下对话框的示图及代码:
PrivateSubCommand1_Click()“查找下一个”按钮
StaticQAsInteger
intFoundPos=InStr(Q+1,form1.txt.Text,Text1.Text,0)'
form1.txt.SetFocus
Q=intFoundPos
PrivateSubCommand3_Click()“全部替换”按钮
DimAAsString,bAsInteger
StaticnAsInteger
A=InStr(b+1,form1.txt.Text,Text2.Text,1)'
n=form1.txt.SelStart=A-1
form1.txt.SelText=Text2.Text
PrivateSubCommand2_Click()“替换”按钮
form1.txt.SelText=Text2.Text'
替换
form1.txt.SetFocus'
得到焦点
转到下一行:
PrivateSubREPEAL_Click()
Form4.Show
当点击“转行”出现以下对话框的示图及代码
PrivateSubCommand2_Click()
Unloadform2
自动换行:
PrivateSubZDHH_Click()
IfZDHH.Checked=FalseThen
ZDHH.Checked=True'
如果自动换行
txt.Visible=False'
文本框2隐藏
Text2.Visible=True'
文本框1显现
Text2.Text=Text1.Text'
将文本框2的内容赋给文本框1
Else:
Change.Checked=False'
如果不自动换行
Text2.Visible=False'
文本框1隐藏
Text1.Visible=True'
文本框2显现
Text1.Text=Text2.Text'
把文本框1的内容赋给文本框2
字体:
PrivateSubsize_Click()
CommonDialog1.Flags=1
CommonDialog1.Action=4
RichTextBox1.SelFontSize=CommonDialog1.FontSize
RichTextBox1.SelFontName=CommonDialog1.FontName
RichTextBox1.SelBold=CommonDialog1.FontBold
RichTextBox1.SelItalic=CommonDialog1.FontItalic
RichTextBox1.SelUnderline=CommonDialog1.FontUnderline
RichTextBox1.SelStrikeThru=CommonDialog1.FontStrikethru
字体颜色:
PrivateSubcolor_Click()
CommonDialog1.Action=3
RichTextBox1.SelColor=CommonDialog1.color
状态栏:
PrivateSubZTL_Click()
ZTL.Checked=NotZTL.Checked
IfZTL.Checked=TrueThen
txt.Visible=True
Else
txt.Visible=False
关于记事本:
PrivateSubabout_Click()
frmAbout.Show
Form1.Enabled=True
帮助主题:
PrivateSubusage_Click()
OnErrorGoTohandler
RichTextBox1.LoadFile"
Readme.txt"
rtfText'
请写好Readme.txt文件并存入程序所在文件夹中
"
使用说明"
ExitSub
handler:
MsgBox"
使用说明文档可能已经被移除,请与作者联系。
工具栏:
PrivateSubToolbar1_ButtonClick(ByValButtonAsMSComCtlLib.Button)
OnErrorResumeNext
SelectCaseButton.Key
Case"
保存"
记事本:
打开"
CommonDialog1.Filter="
新建"
wang=MsgBox("
记事本"
Ifwang=1Then
Ifwang=2Then
复制"
IfRichTextBox1.SelLength>
mnupaste.Enabled=True
查找"
DimsFindAsString
sFind=InputBox("
请输入要查找的字、词:
"
查找内容"
sFind)
RichTextBox1.findsFind
剪切"
删除"
RichTextBox1.Text="
粘贴"
RichTextBox1.SelText=Clipboard.GetText
打印"
CommonDialog1.Action=5
帮助"
OnErrorGoTohandler
请写好Readme.txt文件并存入程序所在文件夹中
请进行上网查询。
EndSelect
编辑:
PrivateSubedit_Click()
Iftxt.SelText="
Then'
从TXT控件中删除被选中的文本
cut.Enabled=False'
剪切控件为假
copy.Enabled=False'
复制控件为假
cut.Enabled=True'
剪切控件为真
copy.Enabled=True'
复制控件为真
cut.Enabled=False
copy.Enabled=False
cut.Enabled=True
copy.Enabled=True
IfClipboard.GetText="
从剪贴板上获取文本
paste.Enabled=False'
粘贴控件为假
paste.Enabled=True'
粘贴控件为真
制作完成后的界面
六.心得体会
VB程序设计这门课属于自学课,所以这门课的学习主要是自己借助于图书馆与网络进行学习,由于自己平时比较懒散,没有严格按照课程安排进行上课学习,所以对于这次记事本程序设计的完成还是感觉相当艰难的,但在书本和网络资源的帮助下还是完成了作业,经过这段时间也对vb有了一定的掌握,从刚开始练软件如何运行都有点困难到最后成功完成作业,这个过程学到了很多知识。
经过这段时间的学习,现在已经拥有一个像模像样的记事本了。
这个记事本由于用了RichText控件,理论上它能打开和编辑任意大的文档,使用起来的确比Windows自带的记事本方便得多。
当然,肯定还有一些其它的功能需要添加和完善。