VB来做一个记事本程序

VB来做一个记事本程序,像堆积木一样简单!{推荐}用VB编程就像堆积木,现在我就教大家用VB来做一个记事本程序,通过阅读、研究本文并按本文所述进行尝试,初学者将学到很多东西,如怎样使用RichText控件来打开和保存文件,怎样制作菜单、工具栏和状态栏以及如何对其编写代码等。

第一章让我们的记事本马上运行急于求成是初学者共有的心愿。

那好,请按如下三个步骤做,我们的愿望立即就可以实现!步骤一:绘制界面。

新建一个标准EXE工程,将其Caption属性改为“超级记事本”,点击Icon属性给它找个合适的Icon图标。

单击菜单“工程”-“部件”,在弹出的“部件”对话框里找到Microsoft RichText Box 6.0和公共对话框Microsoft Common Dialog 6.0并选中它们,单击“确定”按钮。

这时左边的工具栏上出现了我们刚才新添的两个控件了。

在窗体上绘制RichText Box和Commn Dialog,其中RichText Box的大小和位置可不用理睬,我们将在代码中处理它,当然,有必要把它的ScrollBar属性设为2-rtfVertical,这样在打开和编辑文件时垂直滚动条才可用。

步骤二:编辑菜单。

按Ctrl+E调出菜单编辑器,我们来做如下几个菜单:一.文件菜单:文件(第一层)mnuFile新建(第二层)mnuNew打开(第二层)mnuOpen保存(第二层)mnuSave- (第二层)mnuFileSep (分隔线)退出(第二层)mnuExit二.编辑菜单:编辑(第一层)mnuEdit复制(第二层)mnuCopy剪切(第二层)mnuCut粘贴(第二层)mnuPaste- (第二层)mnuEditSep (分隔线)全选(第二层)mnuSelecAll三.搜索菜单:搜索(第一层)mnuSearch查找(第二层)mnuFind查找下一个(第二层)mnuFindOn四.帮助菜单:帮助(第一层)mnuHelp使用说明(第二层)mnuUsage关于(第二层)mnuAbout(注:各菜单项的快捷键请自行设置)好了,其它的菜单项以后再根据需要添加。

现在进入:步骤三:编写代码。

`声明查找变量Dim sFind As String`声明文件类型Dim FileType, FiType As String`初始化程序Private Sub Form_Load()`设置程序启动时的大小Me.Height = 6000Me.Width = 9000End Sub`设置编辑框的位置和大小Private Sub Form_Resize()On Error Resume Next `出错处理RichTextBox1.Top=20RichTextBox1.Left=20RichTextBox1.Height = ScaleHeight-40RichTextBox1.Width = ScaleWidth-40End Sub`新建文件Private Sub mnuNew_Click()RichTextBox1.Text = "" `清空文本框FileName = "未命名"Me.Caption = FileNameEnd Sub`打开文件Private Sub mnuOpen_Click()CommonDialog1.Filter = "文本文档(*.txt)|*.txt|RTF文档(*.rtf)|*.rtf|所有文件(*.*)|*.*" CommonDialog1.ShowOpenRichTextBox1.Text = "" `清空文本框FileName = CommonDialog1.FileNameRichTextBox1.LoadFile FileNameMe.Caption = "超级记事本:" & FileName`保存文件Private Sub mnuSave_Click()CommonDialog1.Filter = "文本文档(*.txt)|*.txt|RTF文档(*.rtf)|*.rtf|所有文件(*.*)|*.*" CommonDialog1.ShowSaveFileType = CommonDialog1.FileTitleFiType = LCase(Right(FileType, 3))FileName = CommonDialog1.FileNameSelect Case FiTypeCase "txt"RichTextBox1.SaveFile FileName, rtfTextCase "rtf"RichTextBox1.SaveFile FileName, rtfRTFCase "*.*"RichTextBox1.SaveFile FileNameEnd SelectMe.Caption = "超级记事本:" & FileNameEnd Sub`退出Private Sub mnuExit_Click()EndEnd Sub`复制Private Sub mnuCopy_Click()Clipboard.ClearClipboard.SetText RichTextBox1.SelTextEnd Sub`剪切Private Sub mnuCut_Click()Clipboard.ClearClipboard.SetText RichTextBox1.SelTextRichTextBox1.SelText = ""End Sub`全选Private Sub mnuSelectAll_Click()RichTextBox1.SelStart = 0RichTextBox1.SelLength = Len(RichTextBox1.Text)`粘贴Private Sub mnuPaste_Click()RichTextBox1.SelText = Clipboard.GetTextEnd Sub`查找Private Sub mnuFind_Click()sFind = InputBox("请输入要查找的字、词:", "查找内容", sFind)RichTextBox1.Find sFindEnd Sub`继续查找Private Sub mnuFindOn_Click()RichTextBox1.SelStart = RichTextBox1.SelStart + RichTextBox1.SelLength + 1 RichTextBox1.Find sFind, , Len(RichTextBox1)End Sub`使用说明Private Sub mnuReadme_Click()On Error GoTo handlerRichTextBox1.LoadFile "Readme.txt", rtfText `请写好Readme.txt文件并存入程序所在文件夹中Me.Caption = "超级记事本:" & "使用说明"Exit Subhandler:MsgBox "使用说明文档可能已经被移除,请与作者联系。

", vbOKOnly, " 错误信息"End Sub`关于Private Sub mnuAbout_Click()MsgBox "超级记事本Ver1.0 版权所有 2001 土人",vbOKOnly,"关于"End Sub`设置弹出式菜单(即在编辑框中单击鼠标右键时弹出的动态菜单)Private Sub RichTextBox1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)If Button = 2 ThenPopupMenu mnuEdit, vbPopupMenuLeftAlignElseEnd IfEnd Sub`防止在切换输入法时字体自变(感谢王必成先生提供此方案)Private Sub RichTextBox1_KeyUp(KeyCode As Integer, Shift As Integer)If KeyCode = vbKeySpace ThenRichTextBox1.SelFontName = CommonDialog1.FontNameEnd IfEnd Sub至此,我们的记事本可以编译使用了。

点击菜单“文件”-“生成XXX.EXE”,回到桌面运行我们的记事本看看,是不是颇有成就感?当然,这样的记事本还比较粗糙,我们还需要做些工作,请看下一章。

第二章美化程序界面多数字处理软件都有工具栏和状态栏。

工具栏和状态栏除了能美化我们的程序使其更具有专业性质外,还给用户带来操作上的便利。

现在我们就来做一做这两样东西。

一.工具栏(一)制作工具栏单击“工程”-“部件”,选中Microsoft Windows Common Control 6.0并确定。

这时,我们要用到的控件就出现在左边的工具栏上了。

要做工具栏,首先需要一个叫ImageList的控件来装载图像。

在程序界面上添加它,然后右键单击此控件,左键单击“属性”,弹出“属性页”对话框的“图像”,再单击“插入图片”就可以一次性装载图片了(如不满意,以后还可以添加)。

图片可在C:\Microsoft VisualStudio\Common\Graphics\Bitmaps\TlBr_W95下选择(这里假设你的VB安装在C盘下)。

注意了:在插入图片时给每一张图片注明关键字,以便在引用图片时不至于混乱。

如插入“新建”的图片,我们在“关键字”栏注明“New”。

图片有了,接下来在程序界面添加工具栏(ToolBar)。

添加后工具栏就出现在菜单下面,右键单击它,选择“属性”,在弹出的“属性页”对话框中的“通用”项作些设置,主要如下两项:1.“图像列表”:选择ImageList12.“样式”:根据喜爱选择1-trbStandard或者2-trbFlat继续点击“属性页”的“按钮”选项,插入若干按钮。

按钮有多种样式,请根据需要设置。

这里请一定注意:每一个与用户操作有关的按钮都必须注明关键字、装载图片,如“新建”按钮,在“关键字”项注明“新建”,在“图像”项键入“New”(即ImageList1中的图片关键字),需要的话还可以在“工具提示文本”项填入适当的提示语。

合集下载

VB编程——创建记事本——济源职业技术学院

VB编程——创建记事本——济源职业技术学院

创建记事本步骤:1.设计菜单如下父菜单标题子菜单标题菜单名文件 file新建 file_new打开 file_open保存 file_save - file_line退出 file_exit编辑 edit剪切 edit_cut复制 edit_copy粘贴 edit_paste删除 edit_dele字体 zt颜色 ys帮助 help2.设计窗体界面如下:3.添加rich textbox control6.0控件,命名为text1,界面如下:4.添加窗体的resize事件Private Sub Form_Resize()Text1.Top = 50Text1.Left = 50Text1.Width = Form1.Width - 200Text1.Height = Form1.Height - 5005.添加菜单file的各项子菜单功能(在窗体上添加一个通用对话框控件,命名为CD)新建子菜单功能:Private Sub file_new_Click()b = MsgBox("是否保存?", vbYesNo, "提示信息")If b = vbYes ThenCall file_save_Click ‘调用保存End IfText1.Text = ""End Sub打开子菜单功能:Private Sub file_open_Click()CD.Filter = "所有文件(*.*)|*.*|(*.txt)|*.txt"CD.ShowOpenText1.LoadFile CD.FileNameEnd Sub保存子菜单功能:Private Sub file_save_Click()CD.Filter = "所有文件(*.*)|*.*|(*.txt)|*.txt"CD.ShowSaveText1.SaveFile CD.FileNameEnd Sub退出子菜单功能:Private Sub file_exit_Click()b = MsgBox("确定要退出吗?", vbYesNo, "提示信息")If b = vbYes ThenEndEnd IfEnd Sub6. 添加菜单编辑菜单的各项子菜单功能(注意要在通用下定义一个变量Dim s As String,和粘贴板功能类似)Dim s As String复制子菜单功能:Private Sub edit_copy_Click()s = Text1.SelTextEnd Sub剪切子菜单功能:Private Sub edit_cut_Click()s = Text1.SelTextText1.SelText = ""End Sub删除子菜单功能:Private Sub edit_dele_Click()Text1.SelText = ""粘贴子菜单功能:Private Sub edit_paste_Click()Text1.Text = Left(Text1.Text, Text1.SelStart) + s + Mid(Text1.Text, Text1.SelStart + 1)End Sub7. 字体菜单功能Private Sub zt_Click()CD.Flags = 3CD.ShowFontText1.SelFontName = CD.FileNameText1.SelBold = CD.FontBoldText1.SelFontSize = CD.FontSizeEnd Sub8.颜色菜单功能Private Sub ys_Click()CD.Flags = 2CD.ShowColorText1.SelColor = CD.ColorEnd Sub9. 帮助菜单功能Private Sub help_Click()CD.HelpCommand = cdlHelpForceFileCD.HelpFile = "c:\WINNT\VB5DEF.HLP" '请大家搜索任意一个扩展名为hlp的文件CD.ShowHelp '显示Windows帮助引擎End Sub创建记事本步骤:1.设计菜单如下父菜单标题子菜单标题菜单名文件 file新建 file_new打开 file_open保存 file_save - file_line退出 file_exit编辑 edit剪切 edit_cut复制 edit_copy粘贴 edit_paste删除 edit_dele字体 zt颜色 ys帮助 help2.设计窗体界面如下:3.添加rich textbox control6.0控件,命名为text1,界面如下:4.添加窗体的resize事件Private Sub Form_Resize()Text1.Top = 50Text1.Left = 50Text1.Width = Form1.Width - 200Text1.Height = Form1.Height - 500End Sub5.添加菜单file的各项子菜单功能(在窗体上添加一个通用对话框控件,命名为CD)新建子菜单功能:Private Sub file_new_Click()b = MsgBox("是否保存?", vbYesNo, "提示信息")If b = vbYes ThenCall file_save_Click ‘调用保存End IfText1.Text = ""End Sub打开子菜单功能:Private Sub file_open_Click()CD.Filter = "所有文件(*.*)|*.*|(*.txt)|*.txt"CD.ShowOpenText1.LoadFile CD.FileNameEnd Sub保存子菜单功能:Private Sub file_save_Click()CD.Filter = "所有文件(*.*)|*.*|(*.txt)|*.txt"CD.ShowSaveText1.SaveFile CD.FileNameEnd Sub退出子菜单功能:Private Sub file_exit_Click()b = MsgBox("确定要退出吗?", vbYesNo, "提示信息")If b = vbYes ThenEndEnd IfEnd Sub6. 添加菜单编辑菜单的各项子菜单功能(注意要在通用下定义一个变量Dim s As String,和粘贴板功能类似)Dim s As String复制子菜单功能:Private Sub edit_copy_Click()s = Text1.SelTextEnd Sub剪切子菜单功能:Private Sub edit_cut_Click()s = Text1.SelTextText1.SelText = ""End Sub删除子菜单功能:Private Sub edit_dele_Click()Text1.SelText = ""End Sub粘贴子菜单功能:Private Sub edit_paste_Click()Text1.Text = Left(Text1.Text, Text1.SelStart) + s + Mid(Text1.Text, Text1.SelStart + 1)End Sub7. 字体菜单功能Private Sub zt_Click()CD.Flags = 3CD.ShowFontText1.SelFontName = CD.FileNameText1.SelBold = CD.FontBoldText1.SelFontSize = CD.FontSizeEnd Sub8.颜色菜单功能Private Sub ys_Click()CD.Flags = 2CD.ShowColorText1.SelColor = CD.ColorEnd Sub9. 帮助菜单功能Private Sub help_Click()CD.HelpCommand = cdlHelpForceFileCD.HelpFile = "c:\WINNT\VB5DEF.HLP" '请大家搜索任意一个扩展名为hlp的文件CD.ShowHelp '显示Windows帮助引擎End Sub创建记事本步骤:1.设计菜单如下父菜单标题子菜单标题菜单名文件 file新建 file_new打开 file_open保存 file_save - file_line退出 file_exit编辑 edit剪切 edit_cut复制 edit_copy粘贴 edit_paste删除 edit_dele字体 zt颜色 ys帮助 help2.设计窗体界面如下:3.添加rich textbox control6.0控件,命名为text1,界面如下:4.添加窗体的resize事件Private Sub Form_Resize()Text1.Top = 50Text1.Left = 50Text1.Width = Form1.Width - 200Text1.Height = Form1.Height - 5005.添加菜单file的各项子菜单功能(在窗体上添加一个通用对话框控件,命名为CD)新建子菜单功能:Private Sub file_new_Click()b = MsgBox("是否保存?", vbYesNo, "提示信息")If b = vbYes ThenCall file_save_Click ‘调用保存End IfText1.Text = ""End Sub打开子菜单功能:Private Sub file_open_Click()CD.Filter = "所有文件(*.*)|*.*|(*.txt)|*.txt"CD.ShowOpenText1.LoadFile CD.FileNameEnd Sub保存子菜单功能:Private Sub file_save_Click()CD.Filter = "所有文件(*.*)|*.*|(*.txt)|*.txt"CD.ShowSaveText1.SaveFile CD.FileNameEnd Sub退出子菜单功能:Private Sub file_exit_Click()b = MsgBox("确定要退出吗?", vbYesNo, "提示信息")If b = vbYes ThenEndEnd IfEnd Sub6. 添加菜单编辑菜单的各项子菜单功能(注意要在通用下定义一个变量Dim s As String,和粘贴板功能类似)Dim s As String复制子菜单功能:Private Sub edit_copy_Click()s = Text1.SelTextEnd Sub剪切子菜单功能:Private Sub edit_cut_Click()s = Text1.SelTextText1.SelText = ""End Sub删除子菜单功能:Private Sub edit_dele_Click()Text1.SelText = ""粘贴子菜单功能:Private Sub edit_paste_Click()Text1.Text = Left(Text1.Text, Text1.SelStart) + s + Mid(Text1.Text, Text1.SelStart + 1)End Sub7. 字体菜单功能Private Sub zt_Click()CD.Flags = 3CD.ShowFontText1.SelFontName = CD.FileNameText1.SelBold = CD.FontBoldText1.SelFontSize = CD.FontSizeEnd Sub8.颜色菜单功能Private Sub ys_Click()CD.Flags = 2CD.ShowColorText1.SelColor = CD.ColorEnd Sub9. 帮助菜单功能Private Sub help_Click()CD.HelpCommand = cdlHelpForceFileCD.HelpFile = "c:\WINNT\VB5DEF.HLP" '请大家搜索任意一个扩展名为hlp的文件CD.ShowHelp '显示Windows帮助引擎End Sub创建记事本步骤:1.设计菜单如下父菜单标题子菜单标题菜单名文件 file新建 file_new打开 file_open保存 file_save - file_line退出 file_exit编辑 edit剪切 edit_cut复制 edit_copy粘贴 edit_paste删除 edit_dele字体 zt颜色 ys帮助 help2.设计窗体界面如下:3.添加rich textbox control6.0控件,命名为text1,界面如下:4.添加窗体的resize事件Private Sub Form_Resize()Text1.Top = 50Text1.Left = 50Text1.Width = Form1.Width - 200Text1.Height = Form1.Height - 5005.添加菜单file的各项子菜单功能(在窗体上添加一个通用对话框控件,命名为CD)新建子菜单功能:Private Sub file_new_Click()b = MsgBox("是否保存?", vbYesNo, "提示信息")If b = vbYes ThenCall file_save_Click ‘调用保存End IfText1.Text = ""End Sub打开子菜单功能:Private Sub file_open_Click()CD.Filter = "所有文件(*.*)|*.*|(*.txt)|*.txt"CD.ShowOpenText1.LoadFile CD.FileNameEnd Sub保存子菜单功能:Private Sub file_save_Click()CD.Filter = "所有文件(*.*)|*.*|(*.txt)|*.txt"CD.ShowSaveText1.SaveFile CD.FileNameEnd Sub退出子菜单功能:Private Sub file_exit_Click()b = MsgBox("确定要退出吗?", vbYesNo, "提示信息")If b = vbYes ThenEndEnd IfEnd Sub6. 添加菜单编辑菜单的各项子菜单功能(注意要在通用下定义一个变量Dim s As String,和粘贴板功能类似)Dim s As String复制子菜单功能:Private Sub edit_copy_Click()s = Text1.SelTextEnd Sub剪切子菜单功能:Private Sub edit_cut_Click()s = Text1.SelTextText1.SelText = ""End Sub删除子菜单功能:Private Sub edit_dele_Click()Text1.SelText = ""粘贴子菜单功能:Private Sub edit_paste_Click()Text1.Text = Left(Text1.Text, Text1.SelStart) + s + Mid(Text1.Text, Text1.SelStart + 1)End Sub7. 字体菜单功能Private Sub zt_Click()CD.Flags = 3CD.ShowFontText1.SelFontName = CD.FileNameText1.SelBold = CD.FontBoldText1.SelFontSize = CD.FontSizeEnd Sub8.颜色菜单功能Private Sub ys_Click()CD.Flags = 2CD.ShowColorText1.SelColor = CD.ColorEnd Sub9. 帮助菜单功能Private Sub help_Click()CD.HelpCommand = cdlHelpForceFileCD.HelpFile = "c:\WINNT\VB5DEF.HLP" '请大家搜索任意一个扩展名为hlp的文件CD.ShowHelp '显示Windows帮助引擎End Sub。

vb记事本编程源程序

vb记事本编程源程序

vb记事本编程源程序Option ExplicitDim filename As StringDim FileType As StringDim FiType As StringDim sFind As StringDim result As StringDim bWrap As BooleanDim ask As BooleanDim msgtext As StringDim Flag As StringPrivate Sub Form_Load()ask = FalseRichText.Text = ""filename = "无标题-记事本"Form1.Caption = "无标题-记事本" RichText.Height = Form1.ScaleHeight RichText.Width = Form1.ScaleWidth StatusBar1.Visible = False StatusBar1.Panels(1).Text = Time mnucopy.Enabled = False mnucut.Enabled = False mnufound.Enabled = False mnufoundnext.Enabled = False mnudel.Enabled = False mnucancel.Enabled = False mnuwordwrap.Checked = Truemnugoto.Enabled = FalseIf Clipboard.GetText <> "" Thenmnuplaster.Enabled = TrueElsemnuplaster.Enabled = FalseEnd IfApp.HelpFile = App.Path & "\notepad.chm"End SubPrivate Sub Form_Resize()RichText.Height = Form1.ScaleHeightRichText.Width = Form1.ScaleWidthEnd SubPrivate Sub Form_Unload(Cancel As Integer)msgtext = "文件" & filename & "的文字已经改变。

vb记事本

vb记事本

vb记事本个人用vb做了一个山寨记事本,分享一下:所用控件比较少,主要是用的commondialog控件一.功能文件打开,文件保存,复制,粘贴,剪贴,删除,字体各项设置,帮助菜单二.程序Private Sub a_Click() '复制Clipboard.SetText Text1.SelTextEnd SubPrivate Sub b_Click() '剪贴Clipboard.SetText Text1.SelTextText1.SelText = ""End SubPrivate Sub c_Click() '粘贴Text1.SelText = Clipboard.GetTextEnd SubPrivate Sub f_Click() '删除Text1.SelText = ""End SubPrivate Sub d_Click() '字体CommonDialog1.Flags = cdlCFEffects + cdlCFBothCommonDialog1.ShowFontWith CommonDialog1On Error GoTo AText1.FontName = .FontNameText1.FontBold = .FontBoldText1.FontItalic = .FontItalicText1.FontSize = .FontSizeText1.FontStrikethru = .FontStrikethruText1.FontUnderline = .FontUnderlineText1.ForeColor = .ColorA: Text1.FontName = "宋体"Text1.FontBold = .FontBoldText1.FontItalic = .FontItalicText1.FontSize = .FontSizeText1.FontStrikethru = .FontStrikethruText1.FontUnderline = .FontUnderlineText1.ForeColor = .ColorEnd WithEnd SubPrivate Sub e_Click() '打开Dim temp As StringDim all As StringCommonDialog1.ShowOpenOpen CommonDialog1.FileName For Input As #1Do While Not EOF(1)Input #1, tempall = all & temp & Chr(13) & Chr(10)LoopClose #1Text1.Text = allEnd SubPrivate Sub q_Click() '保存CommonDialog1.FileName = ""CommonDialog1.Filter = "数据文件(*.dat)"CommonDialog1.DialogTitle = "保存文件"CommonDialog1.InitDir = App.Path & "\"CommonDialog1.ShowSaveCommonDialog1.Flags = cdlOFNOverwritePrompt If CommonDialog1.FileName <> "" Thenfliename = CommonDialog1.FileNamestrText = Text1.TextOpen fliename For Output As #2Print #2, strTextClose #2End IfEnd SubPrivate Sub y_Click()’帮助对话框Form2.ShowEnd Sub三.界面1.主界面2.字体设置3文件保存4.文件打开5.帮助对话框。

VB2020编写的简易记事本

VB2020编写的简易记事本

Public Class实训1Private fileName As String‘声明一个模块级变量,用于保存当前正在编辑的文件名Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.LoadShowStatus()End SubPrivate Sub mnu格式_自动换行_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnu格式_自动换行.ClickIf mnu格式_自动换行.Checked = False Thenmnu格式_自动换行.Checked = TrueTextBox1.WordWrap = TrueElsemnu格式_自动换行.Checked = FalseTextBox1.WordWrap = FalseEnd IfEnd SubPrivate Sub mnu文件_退出_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnu文件_退出.ClickMe.Close()End SubPrivate Sub mnu帮助_关于_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles帮助_关于_ClickMessageBox.Show("有待完善的简易记事本,版本1.0“,”关于记事本") End SubPrivate Sub mnu文件_新建_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnu文件_新建_ClickSaveFileDialog1.Title = "新建文件"'更改对话框的默认标题SaveFileDialog1.InitialDirectory = "C:\"SaveFileDialog1.Filter = "txt files (*.txt)|*.txt*"If SaveFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then'将对话框中的文件名称赋给变量,用户选择“保存”时仍采用该名称fileName = SaveFileDialog1.FileName'使窗体标题栏显示出当前编辑的文件名Me.Text = "简易记事本-" & fileName'清空文本框中的所有内容TextBox1.Clear()'新建一个空内容文件puter.FileSystem.WriteAllText(fileName, "", True)End IfEnd SubPrivate Sub文件_打开_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles文件_打开_ClickOpenFileDialog1.InitialDirectory = "C:\"OpenFileDialog1.Filter = "txt files (*.txt)|*.txt"If OpenFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK ThenfileName = OpenFileDialog1.FileNameMe.Text = "简易记事本-" & fileNameTextBox1.Text = fileName '文件名保存到模块级变量中'将文件内容读入并输出到TextBox1文本框中TextBox1.Text = puter.FileSystem.ReadAllText(fileName)End IfEnd SubPrivate Sub mnu文件_保存_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnu文件_保存_ClickSaveFileDialog1.Title = "保存文件"'更改对话框的默认标题'设置初始路径为当前文件所在的路径SaveFileDialog1.InitialDirectory = System.IO.Path.GetDirectoryName(fileName)SaveFileDialog1.Filter = "Txt 文件|*.txt"'使对话框中自动出现当前文件的文件名SaveFileDialog1.FileName = System.IO.Path.GetFileName(fileName)If SaveFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK ThenfileName = SaveFileDialog1.FileName'文本内容保存到文件puter.FileSystem.WriteAllText(fileName, TextBox1.Text, True)Me.Text = "简易记事本-" & fileNameEnd IfEnd SubPrivate Sub mnu格式_字体_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnu格式_字体_ClickFontDialog1.ShowColor = True'显示字体颜色选择列表框(默认为不显示)If FontDialog1.ShowDialog() = Windows.Forms.DialogResult.OK ThenTextBox1.Font = FontDialog1.FontTextBox1.ForeColor = FontDialog1.ColorEnd IfEnd SubPrivate Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.ClickMe.mnu文件_新建_Click(sender, e)End SubPrivate Sub ToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton2.ClickMe.mnu文件_打开_Click(sender, e)End SubPrivate Sub ToolStripButton3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton3.ClickMe.mnu文件_保存_Click(sender, e)End SubPrivate Sub ShowStatus()'统计字符个数,显示在状态栏标签1中Me.ToolStripStatusLabel1.Text = "字符总数:"& Me.TextBox1.Text.Length & Space(4)'统计行数,显示在状态栏标签2中Me.ToolStripStatusLabel2.Text = "段落总数:"& Me.TextBox1.Lines.Length & Space(6)'当前日期显示在状态栏标签3中Me.ToolStripStatusLabel3.Text = "今天是:" & Today()End SubPrivate Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChangedShowStatus()End SubPrivate Sub剪切ToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles剪切ToolStripMenuItem1.ClickTextBox1.Cut()End SubPrivate Sub复制ToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles复制ToolStripMenuItem1.ClickTextBox1.Copy()End SubPrivate Sub粘贴ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles粘贴ToolStripMenuItem.ClickTextBox1.Paste()End SubPrivate Sub粘贴ToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles粘贴ToolStripMenuItem1.ClickTextBox1.Paste()End SubPrivate Sub剪切ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles剪切ToolStripMenuItem.ClickTextBox1.Cut()End SubPrivate Sub复制ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles复制ToolStripMenuItem.ClickTextBox1.Copy()End SubEnd Class。

VB开发记事本的功能(文本文档 (

VB开发记事本的功能(文本文档 (

VB开发记事本的功能(文本文档 (.txt) )功能:VB开发记事本的功能(文本文档 (.txt) ),使其具有记事本的各块功能VB界面如下:图二1.电脑上必须要先Microsoft Visual Studio(也就是VB软件)2.用VB软件设置窗口如上(图二)3.各个Command对应的VB代码如下:' 初始化Private Sub Form_Load()' 设置当前路径ChDir App.PathChDrive App.Path' 设置文本框的位置txtEdit.Move 0, 0' 初始Filename变量FileName = "Untitled"FileType = 1' 设置窗体位置Top = Screen.Height / 2 - Height / 2 Left = Screen.Width / 2 - Width / 2 End Sub' 改变窗口大小Private Sub Form_Resize()' 窗体大小改变时,相应的改变文本框大小 txtEdit.Width = ScaleWidthtxtEdit.Height = ScaleHeightEnd Sub' “文件”菜单Private Sub mnuFileItem_Click(Index As Integer)On Error GoTo errhandler' 设置过滤器CMDialog1.Filter = "All Files (*.*)|*.*|Text Files (*.txt)|*.txt|RTF Files (*.rtf)|*.rtf"' 设置缺省过滤器CMDialog1.FilterIndex = 2Select Case Index' 根据菜单的索引选择相应的操作Case 0' 如果index = 0, 新建文本文件txtEdit.Text = "" '清空文本框内容FileName = "Untitled"frmEditor.Caption = "记事本: " & FileName '设置记事本标题为 "记事本: Untitled"Case 1' 如果index = 1, 打开文本文件' 显示"打开"对话框CMDialog1.ShowOpenFileName = CMDialog1.FileNameOpenFile (FileName)Case 2' 如果index = 2, 保存文件If FileName = "Untitled" Then'如果文件尚未命名,则显示保存对话框 CMDialog1.ShowSaveFileName = CMDialog1.FileNameWriteFile (FileName)Else'否则直接保存SaveFile (FileName)End IfCase 3' 如果index = 3,另存文件' 显示另存对话框CMDialog1.ShowSaveFileName = CMDialog1.FileNameWriteFile (FileName)Case 4' 无操作,分隔Case 5EndEnd Selecterrhandler:' 错误处理Exit SubEnd Sub' “文件”菜单中的历史文件列表菜单Private Sub mnuFileArray_Click(Index As Integer)' 打开选择的文件If Index >= 0 ThenOpenFile (mnuFileArray(Index).Caption) End IfEnd Sub' 设置“编辑”菜单中子菜单的状态Private Sub mnuEdit_Click()' 如果没有选中文本则使剪切和复制不可用mnuEditItem(0).Enabled = (txtEdit.SelLength > 0) mnuEditItem(1).Enabled = (txtEdit.SelLength > 0)End Sub' “编辑”菜单Private Sub mnuEditItem_Click(Index As Integer)Select Case IndexCase 0' 如果 Index = 0, 剪切选中文本Clipboard.ClearIf FileType = 0 Then ' 剪切选择的文本到Clipboard中.Clipboard.SetText txtEdit.SelRTFtxtEdit.SelRTF = "" ' 清除选中的文本ElseClipboard.SetText txtEdit.SelTexttxtEdit.SelText = "" ' 清除选中的文本End IfCase 1' 如果 Index = 1, 复制选中文本Clipboard.ClearIf FileType = 0 Then ' 复制选择的文本到Clipboard中Clipboard.SetText txtEdit.SelRTFElseClipboard.SetText txtEdit.SelTextEnd IfCase 2' 如果 Index = 2, 粘贴文本txtEdit.SelText = Clipboard.GetText() ' 粘贴文本Case 3' 菜单分隔符Case 4, 5' 如果 Index = 4 5, 查找替换frmFind.Show 0, frmEditorCase 6' 菜单分隔符Case 7' 如果 Index = 4, 全选txtEdit.SelStart = 0txtEdit.SelLength = Len(txtEdit.Text) End SelectEnd Sub' “设置”菜单Private Sub mnuSettingsItem_Click(Index As Integer) On Error GoTo errhandlerSelect Case IndexCase 0' 设置字体CMDialog1.Flags = cdlCFBothCMDialog1.ShowFont '显示“字体”对话框With txtEdit.SelFontName = CMDialog1.FontName.SelBold = CMDialog1.FontBold.SelItalic = CMDialog1.FontItalic.SelFontSize = CMDialog1.FontSize.SelUnderline = CMDialog1.FontUnderline.SelStrikeThru = CMDialog1.FontStrikethruEnd WithCase 1' 设置字体颜色CMDialog1.ShowColor '显示“颜色”对话框txtEdit.SelColor = CMDialog1.ColorEnd Selecterrhandler:' 错误处理Exit SubEnd Sub运行VB时,需要先打开SolidWorks一个新零件窗口,然后运行VB,点击界面按钮即可运行结果:完美实现对应功能。

vb课程设计--记事本程序的编写

vb课程设计--记事本程序的编写

1 选题的背景与意义1.1 记事本创建的背景通过一学期的vb课程学习,理解并掌握了许多相关知识,知道了面向对象程序设计的基本概念和可视化程序设计的基本方法。

为了更好地掌握与运用vb 中最常用的有关窗体和各种控件的运用、菜单、工具栏、对话框、状态栏、的设计以及文件操作等技术,因此在在学完该课程之后,设计了一个能够编辑编辑文本文档、RichText 文档,其文字处理能力类似于Word的简易记事本。

1.2 记事本创建的意义该记事本具有操作简单,易懂灵活,一目了然的特点,同时由于运用了RichText控件,因此能够打开和编辑任意大的文档,运用起来比windows自带的记事本方便的多。

从而为那些计算机技术应用并不熟练但需要使用计算机快速编辑和修改文档的用户提供了便利。

同时该程序的编写也使得自己的知识掌握的更见牢固。

2 系统详细设计2.1 主要功能能够编辑文本文档,其文字处理功能类似于Word。

具有打开、保存、新建和退出文件功能。

具有剪切、复制、粘贴、设置文字的字体以及大小、颜色、对齐等文字编功能。

以及字符串的查找功能。

打印功能。

2.2 要点的实现既使用技术首先,在创建程序是应先设置窗体大小和编辑框的大小。

'窗体的加载事件Private Sub Form_Load()Form1.Top = 0Form1.Left = 0Me.Height = Screen.Height - 4000Me.Width = Screen.Width - 5000CommonDialog1.FontName = "宋体" '程序运行时字体是宋体End Sub'设置编辑框的大小和位置Private Sub Form_Resize()RichTextBox1.Top = 60RichTextBox1.Left = 20RichTextBox1.Height = Me.Height - 100RichTextBox1.Width = Me.Width - 100End Sub第二,程序设计过程中必须先在窗体中添加CommonDialog和RichText控件。

VB模仿记事本程序

VB课程设计报告课程设计题目:小小记事本程序学生姓名:专业:班级:指导教师:2011年5月29日第一章系统分析 (2)第二章系统实现...........................第10 页第三章使用说明 (11)总结: (12)(一)实验题目:小小记事本(二)实验时间:2011年5月24日-20115月28日(三)地点:软件楼318(四)课程设计要求:仿照windows记事本应用程序,要求实现新建,打开,保存文件,对文本进行字体颜色编辑,对文本实现查找,能够复制粘贴功能系统分析(以下为窗体、代码和流程图)窗体:注释:该窗体为Form1注释:该窗体为Form2代码如下:Private Sub Form_Resize()txtNotepad.Width = Form1.WidthtxtNotepad.Height = Form1.HeightEnd SubPrivate Sub mnuFind_Click()Form2.ShowEnd SubPrivate Sub mnuChange_Click()Form2.ShowEnd Sub ' 打开菜单项的单击事件过程Private Sub mnuOpen_Click()' 激活对话框前初始化设置相关属性,激活对话框后将无法在代码中设置其属性CommonDialog1.FileName = "*.txt" ' 初始化文件名CommonDialog1.InitDir = "C:\" ' 初始化路径CommonDialog1.Filter = "Word文档|*.doc|文本文件|*.txt|所有文件|*.*"CommonDialog1.FilterIndex = 2 设置默认文件类型CommonDialog1.Action = 1 激活"打开"对话框txtNotepad.Text = "" 清除文本框中原有内容If CommonDialog1.FileTitle <> "" Then ' 选定文件后执行下列操作Dim InputData As String' 保存文件中每行内容Open CommonDialog1.FileName For Input As #1 ' 打开文件,准备读文件Do While Not EOF(1)Line Input #1, InputData ' 每次读一行' 将读出内容连接在文本框已有文本之后并回车换行txtNotepad.Text = txtNotepad.Text + InputData + vbCrLfLoopClose #1End IfEnd Sub' "另存为"菜单项的单击事件过程Private Sub mnuSaveAs_Click()CommonDialog1.FileName = "文本1.t' 设置缺省文件名CommonDialog1.DefaultExt = "txt" ' 设置缺省扩展名CommonDialog1.InitDir = "C:\"CommonDialog1.Filter = "Word文档|*.doc|文本文件|*.txt|所有文件|*.*"CommonDialog1.FilterIndex = 2CommonDialog1.CancelError =' 选取"取消"按钮时出错On Error GoTo errCance '出错跳转至行标签errCancel CommonDialog1.ShowSave ' 激活"另存为"对话框Open CommonDialog1.FileName F打开文件,准备写入Print #1, txtNotepad.TextClose #1errCancel: ' 行标签End SubPrivate Sub mnuExit_Click()EndEnd Sub' 以下过程用于判断是否已经选中文本Private Sub txtNotepad_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)If Button = 1 And txtNotepad.Sel' 松开左键并选中文本mnuCopy.Enabled =True ' 使"复制"菜单项有效mnuCut.Enabled =True ‘使"剪切"菜单项有效Else ‘未选中文本mnuCopy.Enabled = FalsemnuCut.Enabled = FalseEnd IfEnd SubPrivate Sub mnuCopy_Click()' "复制"菜单项的单击事件过程Clipboard.Clear ' 清除剪贴板中的内容Clipboard.SetText txtNotepad.SelText ' 将选中的文本放到剪贴板中mnuCopy.Enabled = FalsemnuCut.Enabled = FalsemnuPaste.Enabled = TrueEnd SubPrivate Sub mnuCut_Click() ' "剪切"菜单项的单击事件过程Clipboard.ClearClipboard.SetText txtNotepad.SelTexttxtNotepad.SelText = "" ' 删除选中的文本mnuCopy.Enabled = FalsemnuCut.Enabled = FalsemnuPaste.Enabled = TrueEnd SubPrivate Sub mnuPaste_Click() ' 将剪贴板中的文本插入到文本框焦点处,txtNotepad.SelText = Clipboard.GetTextEnd SubPrivate Sub Alm_Click(Index As Integer)txtNotepad.Alignment = IndexEnd SubPrivate Sub font_Click()CommonDialog1.FontName = "宋体"'Flags为256+1,使用屏幕字体;出现颜色、效果等选项CommonDialog1.Flags = 257CommonDialog1.ShowFont '打开"字体"对话框txtNotepad.FontName = CommonDialog1.FontNametxtNotepad.FontSize = CommonDialog1.FontSizetxtNotepad.FontBold = CommonDialog1.FontBoldtxtNotepad.FontItalic = CommonDialog1.FontItalictxtNotepad.FontUnderline = CommonDialog1.FontUnderlinetxtNotepad.FontStrikethru = CommonDialog1.FontStrikethrutxtNotepad.ForeColor = CommonDialog1.ColorEnd SubPrivate Sub Exxxt_Click()EndEnd Sub流程图:使用说明:打开记事本界面,点击“文件”,再点击“打开”来查找计算机中所包含的文档选择所需的文档将其打开,即可实现打开功能;同样的,点击“另存为”,选择记事本中文档所要存放的位置,即可实现保存功能;点击“编辑”,打开文件内容,拖动鼠标,选取所要复制、黏贴或剪切的内容,单击鼠标右键,点选所要进行的操作后,将光标定在相应位置,选择所需的操作即可。

VB记事本的课程设计

一功能分析(1)目标:实现类似与WINDOWS平台下的记事本程序。

(2)涉及功能:新建、打开、保存、另存为、退出、编辑、撤销、复制、粘贴、剪切、删除、查找、全选、打印、格式、字体、颜色、查看、状态栏、帮助、关于等二设计安排(1)查资料(2)初步规划工程步骤(3)开始工程设计:1)建立一个标准的EXE工程。

2)确定窗体Form1的主要属性:Caption3)窗体中添加控件:Timer1 CommonDialog1 VScroll1 HScroll14)添加设置状态栏和工具栏5)编辑菜单控件属性6)编写代码(4)运行工程(5)结束三.界面设计见上传作业四.控件属性设置五.状态栏属性设置六.菜单属性设置见上传作业七.代码设置Dim filecount As IntegerDim inputdata As StringDim TargetPosition As IntegerDim pos As IntegerDim targey As StringDim neirong As StringPrivate 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 Toolbar2_ButtonClick(ByVal Button As MSComCtlLib.Button) On Error Resume NextSelect Case Button.KeyCase "新建"mnunew_ClickCase "打开"mnuopen_ClickCase "剪切"mnuCut_ClickCase "粘贴"mnupaste_ClickCase "保存"mnusave_ClickCase "查找"mnufind_ClickEnd SelectEnd SubPrivate Sub Form_Load()StatusBar1.Panels(1).Text = TimeText1.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 ErrCommonDialog1.DialogTitle = "保存文件"CommonDialog1.Filter = "文本文件|*.txt"CommonDialog1.CancelError = TrueCommonDialog1.ShowSaveOpen CommonDialog1.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 mnunew_Click() '新建Text1.Text = ""End SubPrivate Sub mnuopen_Click() '打开Dim inputdata As StringOn Error GoTo nofileCommonDialog1.Filter = "文本文件|*.txt"CommonDialog1.CancelError = TrueCommonDialog1.ShowOpenText1.Text = ""If CommonDialog1.FileName <> "" ThenOpen CommonDialog1.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 mnusave_Click() '保存On Error Resume NextCommonDialog1.DialogTitle = "保存文件"CommonDialog1.Filter = "文本文件|*.txt"CommonDialog1.CancelError = TrueCommonDialog1.ShowSaveOpen CommonDialog1.FileName For Output As #1Print #1, Text1.TextClose #1End SubPrivate Sub mnusaveas_Click() '另存为On Error Resume NextCommonDialog1.Filter = "文本文件|*.txt" CommonDialog1.CancelError = TrueCommonDialog1.Action = 2Open CommonDialog1.FileName For Output As #1Print #1, Text1.TextClose #1End SubPrivate Sub Text1_Change()If Text1.Text = "" Thenmnufind.Enabled = FalsemnuNext.Enabled = FalseElsemnufind.Enabled = Truemnuselectall.Enabled = TrueEnd IfEnd SubPrivate Sub mnuexit_Click() '退出EndEnd SubPrivate Sub mnuedit_Click() '编辑If Text1.SelLength <> 0 Then ' 如果文本框中没有选中的内容,则剪切\复制\删除和粘贴菜单无效,否则有效mnucut.Enabled = Truemnucopy.Enabled = Truemnudelete.Enabled = Truemnupaste.Enabled = TrueElsemnucut.Enabled = Falsemnucopy.Enabled = Falsemnudelete.Enabled = FalseEnd IfEnd SubPrivate Sub mnucancel_Click() '撤销MsgBox "点击鼠标右键撤销!", vbOKOnly, "提示"End SubPrivate Sub mnucopy_Click() '复制利用SetText 方法,将选中的文本放入剪贴板上Clipboard.SetText Text1.SelTextEnd SubPrivate Sub mnuCut_Click() '剪切Clipboard.SetText Text1.SelTextText1.SelText = ""End SubPrivate Sub mnupaste_Click() '粘贴用GetText1 方法,将剪切板中的内容粘贴到光标所在位置Text1.SelText = Clipboard.GetText()End SubPrivate Sub mnuprint_Click() '打印On Error Resume NextCommonDialog1.ShowPrinterPrinter.Copies = CommonDialog1.CopiesPrinter.Print Text1.TextEnd SubPrivate Sub mnudelete_Click() '删除Text1.SelText = ""End SubPrivate Sub mnuselectall_Click() '全选Text1.SelStart = 0Text1.SelLength = Len(Text1.Text)End SubPrivate Sub mnufont_Click() '字体On Error GoTo mnusave:CommonDialog1.Flags = cdlCFBoth Or cdlCFEffectsCommonDialog1.ShowFontIf CommonDialog1.FontName > "" ThenText1.FontName = CommonDialog1.FontName End IfText1.FontSize = CommonDialog1.FontSizeText1.FontBold = CommonDialog1.FontBoldText1.FontItalic = CommonDialog1.FontItalicText1.FontStrikethru = CommonDialog1.FontStrikethru Text1.FontUnderline = CommonDialog1.FontUnderline Text1.FontBold = CommonDialog1.FontBoldText1.ForeColor = CommonDialog1.Color mnusave:If Err.Number < 0 ThenExit SubEnd IfEnd SubPrivate Sub mnufontcolor_Click() '字体颜色CommonDialog1.ShowColorText1.ForeColor = CommonDialog1.ColorEnd SubPrivate Sub mnuleft_Click() '左对齐Text1.Alignment = 0mnuleft.Checked = Truemnuright(1).Checked = Falsemnuright(2).Checked = FalseEnd SubPrivate Sub mnufind_Click() '查找FindText 1mnuNext.Enabled = TrueEnd SubPrivate Sub mnuNext_Click() '查找下一个FindTex TargetPosition + 1End 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 - 1Form1.Text1.SelLength = Len(targey) '选中找到的字符串Form1.Text1.SetFocusElse '没有找到匹配的字符串MsgBox "没找到匹配的字符串", 48, "提示"Form1.Text1.SetFocusEnd IfEnd 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 mnustatusbar_Click() '状态栏If mnustatusbar.Checked ThenStatusBar1.Visible = Falsemnustatusbar.Checked = FalseElseStatusBar1.Visible = Truemnustatusbar.Checked = TrueEnd IfEnd SubPrivate Sub Timer1_Timer() '时钟If StatusBar1.Panels(1).Text <> CStr(Time) ThenStatusBar1.Panels(1).Text = TimeEnd IfEnd SubPrivate Sub mnuabout_Click() '关于MsgBox "记事本版权所有蓝久莲和黄慧玲" End SubPrivate Sub mnuhelptopic_Click() '帮助主题Shell ("notepad 帮助文件.txt")End Sub八.运行结果(1)实现了在功能分析中要求实现的功能,具体界面如上传的作业(2)运行结果界面见上传作业九.工程设计过程中遇到的问题及解决方法(一)问题(1).如何添加通用对话框,状态栏,工具栏控件(2).保存后无法打开窗体文件,出现加载错误提示(3).即使强行加载窗体文件,在运行时也出现“要求对象错误”(4).在运行过程中出现对象未定义错误(二)解决方法(一)通过在网上查找资料以及在图书馆借阅相关资料,最终得以解决。

VB编写的记事本实验报告

一、实验要求利用vb程序编写记事本,实现记事本的打开、保存、新建、编辑等一般功能。

二、实验目的掌握菜单编辑器的建立、控制,记事本新建打开保存的程序代码,理解并运用CommonDialog的属性和功能等内容。

三、设计软件所实现的功能实现记事本的功能如下:文件的新建、打开、保存、另存为、打印、退出功能,编辑的复制、粘贴、剪切、全选、时间\日期功能,以及格式里的字体功能。

四、设计介绍1、先利用菜单编辑器设计记事本的整体框架,如下图:2、通过在控件工具箱上右击点部件,找到Microsoft Commom Dialog Control 6.0将其左边的复选框勾上,选择确定,这样控件工具箱里就多了这个CommomDialog控件,将其拖拽到窗体上。

3、然后单击各个子菜单项,进入代码界面编写代码。

主要的代码如下:新建代码:Private Sub xinjian_Click()a = MsgBox("要保存吗?", 3, "记事本")If a = 6 Thenbaocun_ClickElseIf a = 7 ThenText1.Text = ""End IfEnd Sub打开的代码:Private Sub dakai_Click()a = MsgBox("要保存吗?", 3, "记事本")If a = 6 Thenbaocun_ClickElseIf a = 7 ThenCommonDialog1.FileName = ""CommonDialog1.Flags = vbofnfilemustexistCommonDialog1.Filter = "all files |*.*|(.exe)|*.exe|(*.txt)|*.txt"CommonDialog1.FilterIndex = 3CommonDialog1.DialogTitle = "open file(*.txt)"CommonDialog1.Action = 1form1.Caption = CommonDialog1.FileNameIf CommonDialog1.FileName = "" ThenMsgBox "no file selectd", 37, "checking"ElseText1.Text = ""Open CommonDialog1.FileName For Input As #1Do While Not EOF(1)Line Input #1, aText1.Text = Text1.Text + a + Chr$(13) + Chr$(10)LoopEnd IfEnd IfEnd Sub保存的代码:Private Sub baocun_Click()If CommonDialog1.FileName <> "" ThenOpen CommonDialog1.FileName For Output As #3Print #3, Text1.TextClose #3ElseCommonDialog1.DefaultExt = "txt"CommonDialog1.FileName = "1bw.txt"CommonDialog1.Filter = "text files(*.txt)|*.txt|all files(*.*)|*.*"CommonDialog1.FilterIndex = 1CommonDialog1.DialogTitle = "save file as(*.txt)"CommonDialog1.Flags = vbofnoverwriteprompt Or vbofnpathmustexistCommonDialog1.ShowSaveform1.Caption = CommonDialog1.FileNameIf CommonDialog1.FileName = "1bw.txt" ThenMsgBox "fail", 37, "checking"ElseOpen CommonDialog1.FileName For Output As #2Print #2, Text1.TextClose #2End IfEnd IfEnd Sub复制的代码:Private Sub fuzhi_Click()Clipboard.SetText Text1.SelTextEnd Sub粘贴的代码:Private Sub zhantie_Click()Text1.SelText = Clipboard.GetTextEnd Sub剪切的代码:Private Sub jianqie_Click()Clipboard.ClearClipboard.SetText Text1.SelTextText1.SelText = ""End Sub全选的代码:Private Sub quanxuan_Click()Text1.SelStart = 0Text1.SelLength = Len(Text1.Text)End Sub字体的代码:Private Sub ziti_Click()CommonDialog1.Flags = 3CommonDialog1.ShowFontText1.FontName = CommonDialog1.FontNameText1.FontSize = CommonDialog1.FontSizeText1.FontBold = CommonDialog1.FontBoldText1.FontItalic = CommonDialog1.FontItalicText1.FontUnderline = CommonDialog1.FontUnderlineText1.FontStrikethru = CommonDialog1.FontStrikethru End Sub是文本框的大小随窗体的变化而变化的代码:Private Sub Form_Resize()Text1.Height = form1.ScaleHeightText1.Width = form1.ScaleWidthEnd Sub4、主要的显示效果图如下所示:打开的效果:字体的效果:。

最强原创vb6.0记事本程序

史上最强vb记事本程序V1.1版添加部件:RichTextBox:RichTextBox1CommonDialog:CommonDialog1 控件属性:窗体:from1''单窗体记事本''v1.1版''作者:王睿''2012-02-01Option ExplicitDim strFind As String ''查找变量Dim fileTitle As String ''当前文本文件名Dim fileName As String ''当前文本文件路径Dim noteText As String ''保存前文本原始数据Dim preText As String ''记录上一步文本内容Dim preTextTemp As String ''缓存记录内容Dim saveTo As Boolean ''是否调用"另存为过程"''系统过程、函数'新建文件 sub init()'保存文件 sub save()'判断是否保存 function isIgnore()Private Sub init() ''新建文件Me.Caption = "无标题 - 记事本" = "宋体"Me.RichTextBox1.Font.Size = 12Me.RichTextBox1.Text = ""noteText = ""fileName = ""fileTitle = ""preText = ""preTextTemp = ""End SubPrivate Sub save() ''保存文件If fileName = "" Or saveTo Then ''判断是否为新建文件或是否为被修改文件CommonDialog1.Filter = "文本文档(*.txt)|*.txt|RTF文档(*.rtf)|*.rtf|所有文件(*.*)|*.*"CommonDialog1.ShowSavefileTitle = CommonDialog1.fileTitlefileName = CommonDialog1.fileNameSelect Case Right(fileTitle, 3)Case "rtf"RichTextBox1.saveFile fileNameCase "txt"RichTextBox1.saveFile fileName, rtfTextCase "*.*"RichTextBox1.saveFile fileNameEnd SelectIf fileTitle<> "" Then Me.Caption = Left(fileTitle, Len(fileTitle) - 4) & " - 记事本"saveTo = FalseElseRichTextBox1.saveFile fileNamenoteText = RichTextBox1.TextEnd IfEnd SubPrivate Function isIgnore() As Boolean ''判断是否保存Dim msgAs String''判断文件是否被修改' "是" call init' "否" MsgBox()If noteText = RichTextBox1.Text ThenCall initElseIf fileTitle = "" Then msg = "无标题" Else msg = fileNameSelect Case MsgBox("是否将更改保存到 " &msg, 3, "记事本")Case 2 ''取消isIgnore = TrueCase 6 ''是Call saveisIgnore = FalseCase 7 ''否isIgnore = FalseEnd SelectEnd IfEnd Function''窗体事件'窗体初始化 Form_Load()'退出系统 Form_Unload()'设置文本框相对窗体位置和大小 Form_Resize()Private Sub Form_Load() ''窗体初始化Me.Height = 6000Me.Width = 9000Me.RichTextBox1.Top = -20Me.RichTextBox1.Left = -20Call initEnd SubPrivate Sub Form_Unload(Cancel As Integer) ''退出系统If isIgnore() Then Cancel = 1End SubPrivate Sub Form_Resize() ''设置文本框相对窗体位置和大小On Error Resume Next ''屏蔽文本框缩放高度异常Me.RichTextBox1.Width = ScaleWidth + 35Me.RichTextBox1.Height = ScaleHeight + 35End Sub''记录当前和上一步文本状态'preText 上一步文本状态'preTextTemp 当前文本状态Private Sub RichTextBox1_Change()preText = preTextTemppreTextTemp = RichTextBox1.TextEnd Sub''文件菜单' 新建文本文件 newFile_Click()' 打开文本文件 openFile_Click()' 保存文本文件 saveFile_Click()' 另存文件saveTo()' -' 退出系统 exit_Click()Private Sub newFile_Click() '新建文本文件If Not (isIgnore()) Then Call initEnd SubPrivate Sub openFile_Click() ''打开文本文件If Not (isIgnore()) ThenCommonDialog1.Filter = "文本文档(*.txt)|*.txt|RTF文档(*.rtf)|*.rtf|所有文件(*.*)|*.*"CommonDialog1.ShowOpenRichTextBox1.Text = "" '清空文本框fileName = CommonDialog1.fileName ''获取文件路径fileTitle = CommonDialog1.fileTitle ''获取文件名RichTextBox1.LoadFile fileNamenoteText = RichTextBox1.TextIf fileTitle<> "" Then Me.Caption = Left(fileTitle, Len(fileTitle) - 4) & " - 记事本"End IfEnd SubPrivate Sub saveFile_Click() ''保存文本文件Call saveEnd SubPrivate Sub saveFileTo_Click() ''另存文件saveTo = TrueCall saveEnd SubPrivate Sub exit_Click() ''退出系统If Not (isIgnore()) Then EndEnd Sub''编辑菜单'撤销 back_Click()' -'剪切 cut_Click()'复制 copy_Click()'粘贴 paste_Click()'删除 delete_Click()' -'查找 search_Click()'查找下一个 searchNext()' -'全选selectAll_Click()'插入日期 dateNow_Click()Private Sub back_Click() ''撤销RichTextBox1.Text = preTextEnd SubPrivate Sub cut_Click() ''剪切Clipboard.ClearClipboard.SetText RichTextBox1.SelTextRichTextBox1.SelText = ""End SubPrivate Sub copy_Click() ''复制Clipboard.ClearClipboard.SetText RichTextBox1.SelTextEnd SubPrivate Sub paste_Click() ''粘贴RichTextBox1.SelText = Clipboard.GetTextEnd SubPrivate Sub delete_Click() ''删除RichTextBox1.SelText = ""End SubPrivate Sub search_Click() ''查找strFind = InputBox("请输入要查找的字、词:", "查找内容", strFind) RichTextBox1.Find strFindEnd SubPrivate Sub searchNext_Click() ''查找下一个If strFind<> "" ThenRichTextBox1.SelStart = RichTextBox1.SelStart + RichTextBox1.SelLength RichTextBox1.Find strFind, , Len(RichTextBox1)End IfEnd SubPrivate Sub selectAll_Click() ''全选RichTextBox1.SelStart = 0RichTextBox1.SelLength = Len(RichTextBox1.Text)End SubPrivate Sub dateNow_Click() ''插入日期RichTextBox1.SelText = Hour(Now) & ":" & Minute(Now) & " " & DateEnd Sub''格式菜单'字体 textFont_Click()'颜色 textColor_Click()Private Sub textFont_Click() ''字体CommonDialog1.ShowFont = CommonDialog1.FontNameRichTextBox1.Font.Size = CommonDialog1.FontSizeRichTextBox1.Font.Bold = CommonDialog1.FontBoldRichTextBox1.Font.Italic = CommonDialog1.FontItalicRichTextBox1.Font.Underline = CommonDialog1.FontUnderlineEnd SubPrivate Sub textColor_Click() ''颜色CommonDialog1.ShowColorRichTextBox1.SelStart = 0RichTextBox1.SelLength = Len(RichTextBox1.Text)RichTextBox1.SelColor = CommonDialog1.ColorRichTextBox1.SelLength = 0End Sub''关于记事本Private Sub aboutMe_Click()MsgBox "记事本 Ver1.0 版权所有(C) 2012 ", vbOKOnly, "关于"End Sub''设置弹出式菜单(即在编辑框中单击鼠标右键时弹出的动态菜单)Private Sub RichTextBox1_MouseDown(Button As Integer, Shift As Integer, x As Single, Y As Single)If Button = 2 ThenPopupMenu editEnd IfEnd Sub。

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