- 1
- 0
- 约4.92千字
- 约 6页
- 2016-10-16 发布于重庆
- 举报
VisualBasic60開发(入门教程分享)
关于Visual Basic 6.0类开发 (vb 类模块 学习 入门 教程)??
关于Visual Basic 6.0类开发(上)
--------------------------------------------------------------------------------
对程序员和编程爱好者来说,VB中类的技术是学习中的一个难点,在大型软件的开发过程中,模块(Moudle)、控件(Active ocx)、链接库(Active dll)和类(Class moudle)构成了系统化、高效化的软件工程,而类的技术是控件和链接库技术的基础,因此掌握类的理论和编程方法是非常有意义的。
(一)类的基本定义和应用概述;
类是包含了方法、属性、数据成员的高级代码模块,它既在模块的范畴之内,又是一个没有图形界面的Active ocx,程序员可以象使用控件一样使用它,但却不能看到它,值得注意的是,类是不能继承的。
类能够使我们高效的完成对某一个或者某几个特定的对象的复杂操作,对象的动作就是类的方法,对象的属性就是类的属性过程。相对而言,如果编程的对象是一组事物,那么,我们采用标准模块的方式是非常合适的,在下列两种情况下,应该使用类进行代码处理:
(1)创建大量性质相近的对象;
(2)提高代码的封装性。
类的创建非常简单,在进行代码编写的时候,在“工程”菜单中选择“添加类模块”项目,就可以添加一个空白的类。
类文件一般以.cls作为扩展名保存。
(二)类的方法的实现;
类的方法类似于动态链接库的接口函数,它能够接受其他窗体代码的指定类型参数,并且传递到类中。一般来说类的方法是能够指定是否有返回值的。它在类中通常是一个public过程。请看下面的代码示例,它使一个密码框拒绝非字母的输入:
(1)类cls的代码;
Option Explicit变量检查
Private WithEvents mytxt As TextBox
本类中的方法接受和控制一个text密码框
Dim isNUM As Boolean
类的模块级变量
Public Sub Attach(itTEXT As TextBox)
接受外部变量到mytxt中
Set mytxt = itTEXT
End Sub
Private Sub mytxt_KeyUp(KeyCode As Integer, Shift As Integer)
isNUM = (KeyCode = 65) And (KeyCode = 90)
测试密码框的键盘输入是否是英文字母
If isNUM = False Then
Beep
mytxt.Text =
如果输入不是英文字母则响铃并且清空密码框内容
MsgBox 非法字符输入!
End If
Debug.Print mytxt.Text
调试输出密码框内容
End Sub
类的代码结束
(2)类的引用;
已经编写完成的类可以经过两种格式进行引用,第一种方式:Private(public或者dim) myCLS(指定的类名) As New cls(编写完成的类名);第二种方式较多用于程序编写风格较“老”的程序员:首先在窗体代码中进行模块级声明――Dim myCLS As cls,然后在具体代码过程中进行具体定义―― Set mycls = New cls。这两种方式的效率和代码的简洁性方面可能会有所差别,但在笔者的编程实践中,并没有什么特别的感觉,不过我较多使用第一种方式,因为它书写起来更加方便。另外,在代码结束的时候,使用 Set myCLS = Nothing来取消类的资源占用是一种非常好的编程习惯。
在窗体form1中(窗体有一个密码框控件text1,passworldchar=*)添加以下代码:
Option Explicit
Private myCLS As New cls
引用cls
Private Sub Form_Load()
myCLS.Attach Text1
启动类
End Sub
在代码结束时记得释放资源
Private Sub Form_Unload(Cancel As Integer)
Set myCLS = Nothing
End
End Sub
本文代码展示了类的方法的代码编写过程和调用方式(尽管它和类的事件非常相似),它的效果是,如果密码框中被输入了非字母,则系统振铃,并删除密码框中的原来的数据――在一定程度上保护密
您可能关注的文档
最近下载
- LaserjetCP1025系列打印机打印质量故障排除手册.pdf VIP
- 年会小品剧本小品剧本:搞笑小品剧本《都是喝酒惹事》台词大全.docx VIP
- 2026年高考全国II卷文科综合真题试卷(新课标卷)(+答案).docx VIP
- 安路科技(688107)补国产短板,突高端应用,拓新应用与技术大市场-240717-东北证券-38页.pdf VIP
- [搞笑小品剧本]上当了小品剧本.docx VIP
- 数据中心800V直流供电技术白皮书2.0.pdf
- 上海大学2022-2023学年第1学期《高等数学(上)》期末考试试卷(B卷)附参考答案.pdf
- 上海大学2022-2023学年第1学期《高等数学(上)》期末考试试卷(A卷)附参考答案.pdf
- 中国教育行业人才流动与薪酬水平_2025年12月.docx
- 2024全国初中数学联赛初二卷 .pdf VIP
原创力文档

文档评论(0)