使用VB制作记事本程序
VB编程——创建记事本——济源职业技术学院
![VB编程——创建记事本——济源职业技术学院](https://img.taocdn.com/s3/m/096457ed551810a6f5248674.png)
创建记事本步骤: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记事本编程源程序](https://img.taocdn.com/s3/m/d77dd46732687e21af45b307e87101f69e31fb03.png)
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 & "的文字已经改变。
VB2020编写的简易记事本
![VB2020编写的简易记事本](https://img.taocdn.com/s3/m/3fa63f7701f69e31433294ad.png)
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开发记事本的功能(文本文档 (](https://img.taocdn.com/s3/m/b847606b76232f60ddccda38376baf1ffc4fe338.png)
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课程设计--记事本程序的编写](https://img.taocdn.com/s3/m/198dca8d580216fc700afdc1.png)
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模仿记事本程序](https://img.taocdn.com/s3/m/22fbdf5671fe910ef02df86d.png)
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编写的记事本实验报告
![VB编写的记事本实验报告](https://img.taocdn.com/s3/m/bbec5b6548d7c1c708a14589.png)
一、实验要求利用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记事本程序
![最强原创vb6.0记事本程序](https://img.taocdn.com/s3/m/a4346d63f5335a8102d22025.png)
史上最强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。
用VB写记事本的程序
![用VB写记事本的程序](https://img.taocdn.com/s3/m/fc404c86d15abe23492f4d1b.png)
用V B写记事本的程序文件编码(GHTU-UITID-GGBKT-POIU-WUUI-8968)可视化程序课程—记事本程序实验报告1、新建工程启动VB程序后,建立一个新的工程。
出现“窗体设计器”。
2、创建记事本的菜单栏打开工具选项条单击菜单编辑器(1)在标题栏里面分别添加“文件(&F)”“编辑(&E)”“格式(&A)”“帮助(&H)”并分别设置名称和快捷键。
(2)分别在“文件”“编辑”“格式”“帮助”选项下编辑如图所示的的子菜单,设置标题,名称,快捷键。
3、代码的编写(1)文件 file①新建 new注解: = "无标题-记事本" 把新建记事本的名字定义为“无标题-记事本”②打开 open注解:“On Error GoTo a ” a在代码倒数第二行有定义,如果在打开的过程中出现错误就到“a”退出程序;Dim index As Integer定义变量③保存 save④另存为 as注解:定义一个变量ss作为字符串如果正确执行操作错误就执行a退出⑤打印 print⑥退出 exit(2)编辑 editing①剪切 cut②复制 copy③粘贴 past④删除 delete⑤查找 find注释:sFind = InputBox 查找输入框MsgBox "找不到所要查询的内容", , "查询无果报告"⑥查找下一个 findnext⑦全选 seleall(3)格式①自动换行 autonewline②字体 fond(4)帮助 help关于 about。
VB.NETVB2010自己动手做记事本源码
![VB.NETVB2010自己动手做记事本源码](https://img.taocdn.com/s3/m/942f33a7a1116c175f0e7cd184254b35effd1a4e.png)
VB2010自己动手做记事本源码Imports System.IOPublic Class Form1Dim TempPath As StringPrivate Sub打开OToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles打开OToolStripMenuItem.ClickTryOpenFileDialog1.FileName = ""OpenFileDialog1.Filter = "文本文档|*.txt"OpenFileDialog1.InitialDirectory = "C:\"OpenFileDialog1.ShowDialog()TextBox1.Text = File.ReadAllText(OpenFileDialog1.FileName, System.Text.Encoding.Default)TempPath = OpenFileDialog1.FileNameCatch ex As ExceptionMsgBox(ex.Message)End TryEnd SubPrivate Sub保存SToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles保存SToolStripMenuItem.ClickTryFile.WriteAllText(TempPath, TextBox1.Text, System.Text.Encoding.Default) Catch ex As Exception MsgBox(ex.Message)End TryEnd SubPrivate Sub另存为AToolStripMenuItem_Click(ByVal senderAToolStripMenuItem.ClickTrySaveFileDialog1.ShowDialog()Catch ex As ExceptionMsgBox(ex.Message)End TryEnd SubPrivate Sub新建NToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles新建NToolStripMenuItem.Click'TextBox1.Text = ""TextBox1.Clear()End SubPrivate Sub撤消UToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles撤消UToolStripMenuItem.ClickTextBox1.Undo()End SubPrivate Sub重复RToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles重复RToolStripMenuItem.ClickTextBox1.Undo()End SubPrivate Sub剪切TToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles剪切TToolStripMenuItem.ClickTextBox1.Cut()End SubPrivate Sub复制CToolStripMenuItem_Click(ByVal sender AsCToolStripMenuItem.ClickTextBox1.Copy()End SubPrivate Sub粘贴PToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles粘贴PToolStripMenuItem.ClickTextBox1.Paste()End SubPrivate Sub全选AToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles全选AToolStripMenuItem.ClickTextBox1.SelectAll()End SubPrivate Sub自动换行CT oolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles自定义CToolStripMenuItem.ClickIf TextBox1.WordWrap = True ThenTextBox1.WordWrap = FalseElseTextBox1.WordWrap = TrueEnd IfEnd SubPrivate Sub退出XToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles退出XToolStripMenuItem.ClickMe.Close()End SubPrivate Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load End SubEnd Class。
使用VB制作记事本程序
![使用VB制作记事本程序](https://img.taocdn.com/s3/m/1481ba65af1ffc4ffe47accd.png)
记事本界面如下图所示。
记事本主窗体frmNotepad实现代码如下:Public s$, flag As BooleanDim st As StringDim Char As Byte, PaFi1$, PaFi2$ '窗体的"通用"声明段中定义变量Private Sub Form_Load()Text1 = "关键字首字母自动转换成大写,其余字母转换成小写。
用户自定义的变量、过程名,以第一次定义的为准,以后输入的自动向首次定义的形式转换。
"s = Text1Timer1.Enabled = FalseEnd SubPrivate Sub Text1_Change() '文本框内容发生变化就可以实现再次的查找flag = Trues = Text1.TextEnd Sub'主窗体右侧对字体、字型及大小的设置Private Sub Option1_Click()Text1.FontName = "黑体" '设置Text1的字体为黑体End SubPrivate Sub Option2_Click()Text1.FontName = "楷体_GB2312" '设置Text1的字体为楷体End SubPrivate Sub Option3_Click()Text1.FontSize = 8 '设置Text1的字体大小为8磅End SubPrivate Sub Option4_Click()Text1.FontSize = 20 '设置Text1的字体大小为20磅End SubPrivate Sub Check1_Click()Text1.FontBold = Not Text1.FontBold '设置Text1的字型是否为粗体End SubPrivate Sub Check2_Click()Text1.FontItalic = Not Text1.FontItalic '设置Text1的字型是否为斜体End SubPrivate Sub Check3_Click()Text1.FontStrikethru = Not Text1.FontStrikethru '设置Text1是否加删除线End SubPrivate Sub Check4_Click()Text1.FontUnderline = Not Text1.FontUnderline '设置Text1是否为加下划线End SubPrivate Sub New_Click() '新建文件On Error Resume NextIf Text1 <> "" Theni = MsgBox("文件无标题的文字已经改变。
用VB实现象Windows记事本的一些功能
![用VB实现象Windows记事本的一些功能](https://img.taocdn.com/s3/m/d5b342c75fbfc77da269b15b.png)
内容:讨论如何在用VB编写的记事中实现自动将日志添加到文档尾部、判断保存还是另存为、确认文件是否需要保存等功能。
Windows自带的记事本即Notepad有一些功能还是颇具吸引力的,比如自动在特定的文档尾部加入计算机时钟的时间和日期,截取已经打开或者保存了的纯文档名[见记事本的标题栏]以及搜索等,给用户带来许多方便。
本文就TextBox控件讨论如何实现这些功能。
一、将日志添加到文档在Windows中,如果文档的第一行最左边有".LOG"字样,那么每次用记事本打开此文时,记事本会自动在文档尾部加入时间日期。
".LOG"共占四个字节,又置于文档第一行顶格处,因此可以用VB的Left函数来读取这个字符串,如有,则用CStr函数来自动添加时间和日期。
我们可以在打开文件的程序加入以下代码:DimaAsStringa=Left(Text1.Text,4)'取得头4个字节Ifa=".LOG"Then'若有则:Text1.SelStart=Len(Text1.Text)'光标移到文件尾Text1.SelText=vbCrLf&CStr(Now)'加入换行和时间Else'若无,退出过程ExitSubEndIf这样,我们用VB编写的记事本就和Windows的Notepad一样具有自动将日志添加到文档的功能了。
二、截取FileName中的纯文档名如若我们用Notepad打开文件D:\VBFILE\NEW\Textbox控件用法举例.txt,Notepad的标题栏的Caption变为:TextBox控件用法举例-记事本。
这个,我们用VB来完成还是比较容易的。
为了方便在程序的各处使用,我们不妨编写一个截取字符串的函数:'截取纯文栏名函数FunctionGetFileTitle(OldStrAsString)AsStringOnErrorResumeNextDimnAsInteger,mAsInteger'声明字符串变量DimiAsString,rAsStringDimpAsIntegeri="\"'要查找的指定字符Forn=1ToLen(OldStr)'用Len函数计算已知字符串的字节数m=InStrRev(OldStr,i,-1)'"\"所在的位置(其中的-1是默认的)Nextn'找下去!'截取最后一个"\"后面的字符串r=Right(OldStr,Len(OldStr)-m)'获取Titlep=InStrRev(r,".",-1)'"."所在位置GetFileTitle=Left(r,p-1)'去掉后缀EndFunction现在我们来调用这个函数以获取纯文档名:DimMyStrAsString,ResultAsStringMyStr="d:\games\6do\oldtucom\heart\Story001.TXT"Result=GetFileTitle(MyStr)Me.Caption=Result&"-记事本"执行之,则窗体的标题变为:Story001-记事本,与NotePad的效果无异!三、判断保存还是另存为通常,我们通过使用CommonDialog控件来保存文件,不过,VB的公共对话框提供的ShowSave其实只是SaveAs,如不作处理则在运行程序中每次保存文件都会跳出另存为对话框,为避免这种不便,我们可以声明一个窗体级或模块级的文件名变量[类型:String],并在每一次相关操作中给此变量赋值且保存于内存之中,然后在保存文件时给予识别,如变量不为空则直接保存文件,否则调出另存为对话框,让用户输入文件名。
vb编写的记事本程序vs05
![vb编写的记事本程序vs05](https://img.taocdn.com/s3/m/dffae440336c1eb91a375d8e.png)
End If
bSave = True
If OpenFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
OpenFileDialog1.Title = "打开" '对打开文件对话框初始化
End Sub
Private Sub 新建_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 新建.Click
If SaveFileDialog1.ShowDialog() Then
rtContent.SaveFile(SaveFileDialog1.FileName, RichTextBoxStreamType.PlainText)
'如果文本内容改变或者没有保存,则弹出消息框询问用户是否保存
Select Case flag
Case 6 '如果选择保存,执行保存的操作
If SaveFileDialog1.FileName = "" Then
Case 7 '选择了不保存,则直接执行打开文件
If OpenFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
rtContent.SaveFile(SaveFileDialog1.FileName, RichTextBoxStreamType.PlainText)
End If '如果没有选择要保存的文件名,则弹出对话框,用户选择文件名后保存文本
Else
VB(6.1)制作写字板程序
![VB(6.1)制作写字板程序](https://img.taocdn.com/s3/m/10be492f0912a216147929ee.png)
第5章目录
汝南县职业教育中心
任务1 制作写字板程序
2、RichTextBox控件: 用途:多格式文本框(RichTextBox),允许用户输入和编辑文本 的同时提供了比普通的TextBox控件所没有的更高级的指定格式的 许多功能。 常用属性如下: SelBold(粗体)、SelItalic(斜体)、SelStrikethru(删除线) 、SelUnderline(下划线) (运行态) :用于设置RichtTextBox控 件中选定文本的字体样式 SelBullet (运行态) :决定在RichTextBox控件中的段落是否 有项目符号样式。 SelCharOffset (运行态):设置控件中文本的上下标,>0上 标,<0下标 SelColor (运行态):设置控件中文本颜色 SelFontName (运行态):设置当前选定的文本字体。 例:RichTextBox1.selFontName= "宋体" 汝南县职业教育中心
13/9
第5章目录
汝南县职业教育中心
任务1 制作写字板程序
2、RichTextBox控件: 用途:多格式文本框(RichTextBox),允许用户输入和编辑文本 的同时提供了比普通的TextBox控件所没有的更高级的指定格式的 许多功能。 常用方法如下: SelPrint方法:用于把控件中的格式化文本发送给设备进行打 印 语法:object. SelPrint (HDC) 例: rtbBox.SelPrint (Printer.hDC) '打印rtbBox控件的可见区域
第5章目录
10/9
汝南县职业教育中心
任务1 制作写字板程序
2、RichTextBox控件: 用途:多格式文本框(RichTextBox),允许用户输入和编辑文本 的同时提供了比普通的TextBox控件所没有的更高级的指定格式的 许多功能。 常用属性如下: SelTabCount、SelTabs :返回文本的制表符数目及制表符的绝 对位置。(制表符相当于键盘上按下TAB键之间的距离,也称 为空白符) TextRTF:返回或设置控件的文本 例:If R1.Find(strFind,,Len(.TextRTF))= -1 Then R1.SelStart =R1.SelStart - lngL R1.SelLength = lngL MsgBox "查找结束。", vbInformation, "提示" End If
使用VB程序制作记事本
![使用VB程序制作记事本](https://img.taocdn.com/s3/m/c9527c70f46527d3240ce0c1.png)
认识菜单
在VB中创建菜单
• 菜单编辑器
菜单编辑注意事项
• 访问键设置
– (&访问字母键),如:文件(&F) 访问字母键), 访问字母键),如 文件( )
• 分隔线设置
– 在标题处输入“-”号 在标题处输入“ 号
• 菜单只识别单击事件:click 菜单只识别单击事件:
通用对话框
• 通用对话框Windows系统提供的一种Active X 控 Windows系统提供的一种Active 系统提供的一种
件VB中称之为CommonDialog 控件. VB中称之为CommonDialog 控件. 中称之为
–6种标准对话框,分别是: 6种标准对话框,分别是:
打开(Open)、另存为(Save as)、颜色(Color) (Color)、 打开(Open)、另存为(Save as)、颜色(Color)、 (Open) 字体(font) 打印机(Printer) 和帮助(Help). (font)、 (Printer)、 字体(font)、打印机(Printer)、和帮助(Help).
顺序文件的打开操作-示例
• Open “c:\cj.txt” for input as #1 • Open ss for input as #1
顺序文件的读操作
• Line Input语句 • 格式:Line Input #文件号 变量名 文件号,变量名 文件号 • 作用:从顺序文件中读出一行 一行后,存放在所对 一行 应的字符型或变体型变量中去。 • 示例:
文件处理时注意问题
• 文件操作时用到函数
– Eof():测试指针是否到了文件末尾。如 果到了文件的末尾,其值为True,否则为 False。 – Chr(),通过转换ASCII码值10,13 实 现回车换行功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
记事本界面如下图所示。
记事本主窗体frmNotepad实现代码如下:Public s$, flag As BooleanDim st As StringDim Char As Byte, PaFi1$, PaFi2$ '窗体的"通用"声明段中定义变量Private Sub Form_Load()Text1 = "关键字首字母自动转换成大写,其余字母转换成小写。
用户自定义的变量、过程名,以第一次定义的为准,以后输入的自动向首次定义的形式转换。
"s = Text1Timer1.Enabled = FalseEnd SubPrivate Sub Text1_Change() '文本框内容发生变化就可以实现再次的查找flag = Trues = Text1.TextEnd Sub'主窗体右侧对字体、字型及大小的设置Private Sub Option1_Click()Text1.FontName = "黑体" '设置Text1的字体为黑体End SubPrivate Sub Option2_Click()Text1.FontName = "楷体_GB2312" '设置Text1的字体为楷体End SubPrivate Sub Option3_Click()Text1.FontSize = 8 '设置Text1的字体大小为8磅End SubPrivate Sub Option4_Click()Text1.FontSize = 20 '设置Text1的字体大小为20磅End SubPrivate Sub Check1_Click()Text1.FontBold = Not Text1.FontBold '设置Text1的字型是否为粗体End SubPrivate Sub Check2_Click()Text1.FontItalic = Not Text1.FontItalic '设置Text1的字型是否为斜体End SubPrivate Sub Check3_Click()Text1.FontStrikethru = Not Text1.FontStrikethru '设置Text1是否加删除线End SubPrivate Sub Check4_Click()Text1.FontUnderline = Not Text1.FontUnderline '设置Text1是否为加下划线End SubPrivate Sub New_Click() '新建文件On Error Resume NextIf Text1 <> "" Theni = MsgBox("文件无标题的文字已经改变。
" & vbCrLf & "想保存文件吗?", 3 + 48, "记事本")If i = 6 ThenCommonDialog1.FileName = "*.Txt"CommonDialog1.InitDir = "C:\Windows"CommonDialog1.DefaultExt = "Txt"CommonDialog1.Filter = "文本文件(*.Txt)|(*.Txt)|RTF文档(*.rtf)|*.rtf|所有文件(*.*)|*.*"CommonDialog1.CancelError = TrueCommonDialog1.Action = 2Open CommonDialog1.FileName For Output As #2Print #2, Text1.TextClose #2Text1.Text = ""MsgBox "文件保存成功!", 64, "提示"ElseIf i = 7 ThenText1.Text = ""End IfElseText1 = ""Me.Caption = "未命名"End IfEnd SubPrivate Sub OpenSequenceFile_Click() '打开顺序文件Dim Data '定义三个变量,用于存放读出的数据CommonDialog1.ShowOpen '利用ShowOpen显示打开文件对话框'CommonDialog1.Action = 1 设置Action属性显示打开文件对话框Text1.Text = ""Open CommonDialog1.FileName For Input As #1'打开C:\成绩.txt文件进行读操作,文件号为1Do While Not EOF(1) '判断1号文件是否结束,若不结束则继续Line Input #1, Data '从1号文件中读出一个同学的数据(一行数据) Text1 = Text1 & Data & vbCrLfLoopClose #1 '关闭文件End SubPrivate Sub SaveSequenceFile_Click() '保存顺序文件On Error Resume NextCommonDialog1.FileName = CommonDialog1.FileTitle '设置默认文件名CommonDialog1.DefaultExt = "Txt" '设置默认扩展名CommonDialog1.Action = 2 '或CommonDialog1.ShowSave打开"另存为"对话框 Open CommonDialog1.FileName For Output As #1 '打开1号文件供写入数据Write #1, "学号", "姓名", "高数", "英语", "VB"Write #1, "11301", "王松", 80, 50, 70' 写入第一个学生的成绩,各数据项之间以逗号分隔Write #1, "11302", "姚宇", 70, 80, 90 '写入第二个学生的成绩Write #1, "11303", "刘佳", 60, 80, 85 '写入第三个学生的成绩Write #1, "11304", "李晨", 40, 80, 60 '写入第四个学生的成绩Close #1 '关闭1号文件MsgBox "文件另保存成功!", 64, "提示"End SubPrivate Sub OpenRandomFile_Click() '打开随机文件On Error Resume NextOpen "D:\student.dat" For Random As #1 Len = Len(Stu)Get #1, 3, StuText1.Text = Stu.SNo & Space(2) & Stu.SNa & Space(2) & Stu.SMaClose #1End SubPrivate Sub SaveRandomFile_Click() '保存随机文件On Error Resume NextOpen "D:\student.dat" For Random As #1 Len = Len(Stu)'打开随机文件student.datStu.SNo = "112101" '将数据赋给记录变量Stu.SNa = "张玉"Stu.SMa = 71Put #1, 1, Stu '将数据写入1号文件,记录号为1 Stu.SNo = "112103" '将数据赋给记录变量Stu.SNa = "李明"Stu.SMa = 82Put #1, 3, Stu '将数据写入1号文件,记录号为3 Stu.SNo = "112104" '将数据赋给记录变量Stu.SNa = "王兰"Stu.SMa = 93Put #1, 4, Stu '将数据写入1号文件,记录号为4 Close #1 '关闭随机文件End SubPrivate Sub OpenbinaryFile_Click() '打开二进制文件CommonDialog1.ShowOpenOpen CommonDialog1.FileName For Binary As #2Do While Not EOF(2)Get #2, , Char '从源文件中读出一个字节Text1 = Text1 & Chr(Char) '将读出的数据在文本框中显示LoopClose #2 '关闭二进制文件End SubPrivate Sub SaveBinaryFile_Click() '保存二进制文件CommonDialog1.ShowOpenPaFi1 = CommonDialog1.FileNameOpen PaFi1 For Binary As #1 '打开源文件CommonDialog1.ShowOpenPaFi2 = CommonDialog1.FileNameOpen PaFi2 For Binary As #2 '打开目标文件Do While Not EOF(1)Get #1, , Char '读源文件一个字节Put #2, , Char '写一个字节到目标文件LoopClose #1 '关闭源文件Close #2 '关闭目标文件End SubPrivate Sub Print_Click() '打印CommonDialog1.Action = 5 '或CommonDialog1.ShowPrinterFor i = 1 To CommonDialog1.CopiesPrinter.Print Text1.Text '打印文本框中的内容Next iPrinter.EndDoc '结束文档打印End SubPrivate Sub exit_Click() '退出a = MsgBox("是否保存文件?", vbYesNo, "请确认")If a = 6 ThenCommonDialog1.Filter = "txt文件|*.txt|所有文件|*.*"CommonDialog1.Action = 2f$ = CommonDialog1.FileNameIf f$ <> "" ThenOpen CommonDialog1.FileName For Output As #2Print #2, Text1.TextClose #2MsgBox "文件保存成功!", 64, "提示"End IfEnd IfEndEnd SubPrivate Sub Text1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) '设置剪切、复制菜单是否有效If Text1.SelText <> "" ThenCut.Enabled = True '当拖动鼠标选中要操作的文本后,剪切、复制按钮有效Copy.Enabled = TrueDelete.Enabled = TruePaste.Enabled = FalseElseCut.Enabled = False '当拖动鼠标未选中文本,剪切、复制按钮无效Copy.Enabled = FalseDelete.Enabled = FalsePaste.Enabled = TrueEnd IfEnd SubPrivate Sub cut_Click() '实现剪切功能st = Text1.SelText '将选中的内容存放到st变量中Text1.SelText = "" '将选中的内容清除,实现了剪切Copy.Enabled = FalseCut.Enabled = FalsePaste.Enabled = TrueEnd SubPrivate Sub copy_Click() '实现复制功能st = Text1.SelText '将选中的内容存放到st变量中Copy.Enabled = False '进行复制后,剪切和复制按钮无效Cut.Enabled = FalsePaste.Enabled = True '粘贴按钮有效End SubPrivate Sub Paste_Click() '实现粘贴功能Text1.Text = Left(Text1, Text1.SelStart) + st + Mid(Text1, Text1.SelStart + 1) End SubPrivate Sub Delete_Click() '实现删除功能Text1.SelText = ""End SubPrivate Sub clear_Click() '实现清除功能Text1.Text = ""End SubPrivate Sub Find_Click() '调用子窗体FrmFind实现查找功能FrmFind.ShowEnd SubPrivate Sub AllSearch_Click() '实现全选功能Text1.SelStart = 0Text1.SelLength = Len(Text1.Text)End SubPrivate Sub TimeDate_Click() '设置当前时间和日期Timer1.Enabled = TrueEnd SubPrivate Sub Timer1_Timer()Text1.Text = Time() & " " & DateEnd SubPrivate Sub Color_Click() '编辑菜单的颜色设置CommonDialog1.ShowColor '或CommonDialog1.Action = 3调用颜色对话框 Text1.ForeColor = CommonDialog1.ColorEnd SubPrivate Sub Font_Click() '编辑菜单的字体设置CommonDialog1.Flags = cdlCFBoth Or cdlCFEffectsCommonDialog1.Action = 4 '或CommonDialog1.ShowFont 调用字体对话框Text1.FontName = CommonDialog1.FontNameText1.FontSize = CommonDialog1.FontSizeText1.FontBold = CommonDialog1.FontBoldText1.FontItalic = CommonDialog1.FontItalicText1.FontStrikethru = CommonDialog1.FontStrikethruText1.FontUnderline = CommonDialog1.FontUnderline'frmfont.Show 或调用子窗体frmfont实现字体的详细设置End SubPrivate Sub form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) '弹出菜单If Button = 2 Then PopupMenu Edit, vbPopupMenuCenterAlign'Button = 2表示单击鼠标右键,vbPopupMenuCenterAlign指定弹出菜单的位置。