【VB开源代码栏目提醒】:网学会员鉴于大家对VB开源代码十分关注,论文会员在此为大家搜集整理了“用VB做记事本 - 其它论文”一文,供大家参考学习
用
VB做记事本科学论坛 刘庆臻 约3415字 摘要
VB是一种可视化的、面向对象的、采用事件驱动方式的结构化高级程序设计语言它可以和WORD、EXCEL、数据库连接也可以通过TEXT控件很方便地制做出界面完善的记事本。
关键词记事本 控件 界面 菜单 工具栏和状态栏 中图分类号TP3 文献标识码B 文章编号100269082007102006801 用
VB做一个记事本并不是件很复杂的事完全可以通过向导方便地做出来。
但如果想做出内容丰富界面优美的记事本并不是件容易的事。
本文介绍通过手动方法制作记事本使用RichTextBox控件来打开和保存文件并说明怎样制作菜单、工具栏和状态栏以及如何对其编写
代码等。
一、绘制界面 新建一个标准EXE工程将其Caption属性改为“超级记事本”点击Icon属性给它找个合适的Icon图标。
单击菜单“工程”/“部件”在弹出的“部件”对话框里找到Microsoft RichTextBox 6.0和公共对话框Microsoft Common Dialog 6.0并选中它们单击“确定”按钮。
这时左边的工具栏上出现了新添的两个控件。
在窗体上绘制RichTextBox和Common Dialog其中RichTextBox的大小和位置不用改变在
代码中处理将RichTextBox的ScrollBar属性设为2-rtfVertical这样在打开和编辑文件时垂直滚动条可用。
二、编辑菜单 通过菜单编辑器制作菜单如下表 其它内容可以采用默认的数值快捷键可以设置自己喜欢的。
菜单建立好后就可以编写
代码了。
首先声明变量如下 Dim sFind As String 39声明查找变量 Dim FileType FiType As String39声明文件类型 接下来要初始化程序设置窗口启动时的大小设置编辑框的位置和大小这就要用到RichTextBox控件程序
代码略。
尔后编写各菜单单击的事件以新建文件的菜单为例其他控件的
代码仿照此可以很写出。
程序
代码如下 Private Sub mnuNew_Click39新建文件 RichTextBox1.Text 343439清空文本框 FileName 34未命名34 Me.Caption FileName End Sub 为了界面更加方便使用常常要设置弹出式菜单即在编辑框中单击鼠标右键时弹出的动态菜单。
编写如下
代码 Private Sub RichTextBox1_MouseDownButton As Integer Shift As Integer X As Single Y As SingleIf Button2 Then PopupMenu mnuEdit vbPopupMenuLeftAlign Else Exit Sub End If End Sub 为了防止在切换输入法时字体自变编写如下一段
代码可以解决此
问题 Private Sub RichTextBox1_KeyUpKeyCode As Integer Shift As Integer If KeyCode vbKeySpace Then RichTextBox1.SelFontName CommonDialog1.FontName End If End Sub 至此记事本的建立完成可以编译使用了。
当然这样的记事本还比较粗糙还需要做些
工作使其更加完善。
第一个要做的是美化程序界面。
多数字处理
软件都有工具栏和状态栏。
工具栏和状态栏除了能美化
程序使其更具有专业性外还给用户带来操作上的便利。
现在就来做工具栏和状态栏。
三、编辑工具栏和状态栏 一工具栏 1.制作工具栏。
单击“工程”/“部件”选中Microsoft Windows Common Control6.0并确定。
这时要用到的控件就出现在左边的工具栏上了。
要做工具栏首先需要一个叫ImageList的控件来装载图像。
在程序界面上添加它然后右键单击此控件左键单击“属性”弹出“属性页”对话框的“图像”再单击“插入图片”就可以一次性装载图片了如不满意以后还可以添加。
图片可在C:Microsoft Visual StudioCommonGrap HicsBitmapsTlBr_W95下选择。
注意了在插入图片时给每一张图片注明关键字以便在引用图片时不至于混乱。
如插入“新建”的图片我们在“关键字”栏注明“New”。
图片有了接下来在程序界面添加工具栏ToolBar。
添加后工具栏就出现在菜单下面右键单击它选择“属性”在弹出的“属性页”对话框中的“通用”项作些设置主要有两项一是“图像
列表”:选择ImageList1二是“样式”:根据喜爱选择1-trbStandard或者2-trbFlat。
继续点击“属性页”的“按钮”选项插入若干按钮。
这里一定要注意每一个与用户操作有关的按钮都必须注明关键字、装载图片如“新建”按钮在“关键字”项注明“新建”在“图像”项键入“New”即ImageList1中的图片关键字需要的话还可以在“工具提示文本”项填入适当的提示语。
2. 编写工具栏的按钮
代码。
工具栏按钮的
代码编辑就简单了
代码格式如下 Private Sub ToolBar1_ButtonClickByVal Button As MSComctlLib.Button On Error Resume Next 39出错处理 Select Case Button.Key 39按关键字选择 Case 34新建34 mnuNew_Click 39等于菜单项“新建”被单击 Case 34打开34 39等于菜单项“打开”被单击 mnuOpen_Click39......继续编写其它按钮的
代码 End Select End Sub 完成后试运行一下程序。
如果打开一个较长的文档后编辑框的下拉滚动条向上的箭头不见了。
那是因为工具条占用一定的空间。
解决方法是将“设置编辑框的位置和大小”中的RichTextBox1.Top 20 和 RichTextBox1.Height Me.ScaleHeight - 40分别改为RichTextBox1.Top 380RichTextBox1.Height Me.ScaleHeight - 400即可。
二状态栏 1. 制作状态栏。
状态栏的英文名字叫StatusBar在窗体上添加它后会默认出现在窗体的最下方。
用鼠标右键点击它调出“属性页”对话框单击“窗格”项插入一些窗格可以将各个窗格的“样式”设置为 0-sbrText 显示文本需编写
代码 1-sbrCaps 显示大小写状态无需编程 2-sbrNum 显示NumLock键开关状态无需编程 3-sbrIns 显示Insert键状态无需编程 4-sbrScr1 5-sbrTime 显示时间不编程时时间不会随系统时钟变化 6-sbrDate 显示日期无需编程 注意:加进状态栏后需将Form_Resze中的RichTextBox1.Height Me.ScaleHeight-400改为RichTextBox1.HeightMe.ScaleHeight- 600。
2. 编写状态栏
代码 根据其“样式”属性决定用不用编写
代码如上文所述。
下面举个例子说明其余的可以举一反三。
运行时让第三个窗格显示时间并让时间跟随
系统时钟变化。
首先给程序加一个Timer控件将Interval属性设为1000。
然后在Form_Load过程加入StatusBar1.Panels1.Text Time然后给Timer控件编写
代码 Private Sub Timer1_Timer If StatusBar1.Panels3.Text StrTime Then StatusBar1.Panels3.Text Time End If End Sub 再如运行时当编辑框的文本发生变化时让第一个窗格显示“正在编辑
文档文件名”程序如下 Private Sub RichTextBox1_Change StatusBar1.Panels1.Text34正在编辑
文档:34 CommonDialog1.FileName End Sub 到此就
设计了一个完整的记事本可以很方便的使用了。
本文由于使用了RichTextBox控件理论上它能打开和编辑任意大的文档使用起来比Windows自带的记事本方便得多。
当然还有一些其它的功能需要添加和完善。
参考文献 1Visual Basic 6.0编程基础 宗大华 、宗涛著科学出版社 2000。
注“本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
”