找回密码
 开放注册

QQ登录

只需一步,快速开始

微信登录

微信扫码,快速开始

搜索
查看: 667|回复: 0

用VB跟我学做记事本

[复制链接]

29

主题

39

回帖

94

牛毛

初生牛犊

积分
94
发表于 2009-4-6 14:03:17 | 显示全部楼层 |阅读模式 来自 辽宁省沈阳市
通过阅读、研究本文并按本文所述进行尝试,初学者将学到很多东西,如怎样使用RichText控件来打开和保存文件,怎样制作菜单、工具栏和状态栏以及如何对其编写代码等。   第一章 让我们的记事本马上运行
  急于求成是初学者共有的心愿。那好,请按如下三个步骤做,我们的愿望立即就可以实现!
  步骤一:绘制界面。
  新建一个标准EXE工程,将其Caption属性改为“超级记事本”,点击Icon属性给它找个合适的Icon图标。单击菜单“工程”-“部件”,在弹出的“部件”对话框里找到MicrosoftRichTextBox 6.0和公共对话框Microsoft CommonDialog6.0并选中它们,单击“确定”按钮。这时左边的工具栏上出现了我们刚才新添的两个控件了。在窗体上绘制RichTextBox和CommnDialog,其中RichTextBox的大小和位置可不用理睬,我们将在代码中处理它,当然,有必要把它的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.border='1' Height = 6000
  Me.Width = 9000
  End Sub
  '设置编辑框的位置和大小
  Private Sub Form_Resize()
  On Error Resume Next '出错处理
  RichTextBox1.Top=20
  RichTextBox1.center=20
  RichTextBox1.border='1' Height = Scaleborder='1' Height-40
  RichTextBox1.Width = ScaleWidth-40
  End Sub
  '新建文件
  Private Sub mnuNew_Click()
  RichTextBox1.Text = "" '清空文本框
  FileName = "未命名"
  Me.Caption = FileName
  End Sub
  '打开文件
  Private Sub mnuOpen_Click()
  CommonDialog1.Filter="文本文档(*.txt) *.txt RTF文档(*.rtf) *.rtf 所有文件(*.*) *.*"
  CommonDialog1.ShowOpen
  RichTextBox1.Text = "" '清空文本框
  FileName = CommonDialog1.FileName
  RichTextBox1.LoadFile FileName
  Me.Caption = "超级记事本:" & FileName
  End Sub
  '保存文件
  Private Sub mnuSave_Click()
  CommonDialog1.Filter="文本文档(*.txt) *.txt RTF文档(*.rtf) *.rtf 所有文件(*.*) *.*"
  CommonDialog1.ShowSave
  FileType = CommonDialog1.FileTitle
  FiType = LCase(center(FileType, 3))
  FileName = CommonDialog1.FileName
  Select Case FiType
  Case "txt"
  RichTextBox1.SaveFile FileName, rtfText
  Case "rtf"
  RichTextBox1.SaveFile FileName, rtfRTF
  Case "*.*"
  RichTextBox1.SaveFile FileName
  End Select
  Me.Caption = "超级记事本:" & FileName
  End Sub
  '退出
  Private Sub mnuExit_Click()
  End
  End Sub
  '复制
  Private Sub mnuCopy_Click()
  Clipboard.Clear
  Clipboard.SetText RichTextBox1.SelText
  End Sub
  '剪切
  Private Sub mnuCut_Click()
  Clipboard.Clear
  Clipboard.SetText RichTextBox1.SelText
  RichTextBox1.SelText = ""
  End Sub
  '全选
  Private Sub mnuSelectAll_Click()
  RichTextBox1.SelStart = 0
  RichTextBox1.SelLength = Len(RichTextBox1.Text)
  End Sub
  '粘贴
  Private Sub mnuPaste_Click()
  RichTextBox1.SelText = Clipboard.GetText
  End Sub
  '查找
  Private Sub mnuFind_Click()
  sFind = InputBox("请输入要查找的字、词:", "查找内容", sFind)
  RichTextBox1.Find sFind
  End 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 handler
  RichTextBox1.LoadFile "Readme.txt",rtfText'请写好Readme.txt文件并存入程序所在文件夹中
  Me.Caption = "超级记事本:" & "使用说明"
  Exit Sub
  handler:
  MsgBox "使用说明文档可能已经被移除,请与作者联系。", vbOKOnly, " 错误信息"
  End Sub
PS:这个只是基本,,至于美化,,其他功能还是靠自己,,,
您需要登录后才可以回帖 登录 | 开放注册

本版积分规则

帮助|Archiver|小黑屋|通信管理局专项备案号:[2008]238号|NB5社区 ( 皖ICP备08004151号;皖公网安备34010402700514号 )

GMT+8, 2025-4-29 03:15 , Processed in 0.148564 second(s), 33 queries .

Powered by Discuz! X3.5

快速回复 返回顶部 返回列表