类事件的定义和调用
Public Class UserControl1
Private WithEvents TY As New 测试类
'在窗体中申明【带事件的对象】,而不是在类中,该类属于自定义类
'定义完事件后,需要使用该事件。
'在上边窗体上选择后自动在窗台函数中生成,而不是在定义的测试类中生成
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim AA As New 测试类 '普通对象的定义,与之相对的是带事件的对象;
'MsgBox(A.这是个属性) '取过程
'A.这是个属性 = "NO" '存过程
'MsgBox(A.这是个属性) '取过程
AA.myAdd(5, 6)
'MsgBox(AA.myMinues(10, 2))
AA.这是个属性 = "1" '属性被改变时调用事件
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
TY.这是个属性 = "Y"
MsgBox(TY.myMinues(6, 3))
End Sub
Private Sub TY_事件名() Handles TY.事件名
MsgBox("事件被响应了")
End Sub
Private Sub TY_方法事件(参数1 As String, 参数2 As Integer) Handles TY.方法事件 '想要激活事件,就要按定义事件的方法传入参数 之前是用属性来激活事件,现在用方法来激活事件
MsgBox(参数1)
MsgBox(参数2)
End Sub
End Class
'分离出来的目的是制作动态连接库
'动态链接库可以在别的项目中使用
'
Public Class 测试类
Private Property 这是个属性A As String = "OK"
'属性的过程,这点和变量的定义过程不同
Public Property 这是个属性 As String '属性的过程,这点和变量的定义过程不同
Get '取过程
MsgBox("You are getting a value =" & 这是个属性A)
Return 这是个属性A
End Get
Set(value As String) '存过程
MsgBox("你正在存入值=" & value)
RaiseEvent 事件名() '响应一个事件
这是个属性A = value
End Set
End Property
'类的方法使用:
''' <summary>
''' 这是个加法运算方法,参数1+参数2,返回整数结果。
''' </summary>
''' <param name="A"></param>
''' <param name="B"></param>
Public Sub myAdd(A As Integer, B As Integer)
MsgBox(A + B)
End Sub
''' <summary>
''' 这个是减法运算方法,参数1-参数2,返回整数结果。
''' </summary>
''' <param name="A"></param>
''' <param name="B"></param>
''' <returns></returns>
Public Function myMinues(A As Integer, B As Integer) As Integer
RaiseEvent 方法事件("第一个参数", 100)
Return A - B
End Function
Private Sub 测试类_事件名() Handles Me.事件名
MsgBox(666)
End Sub
'类事件的定义
Public Event 事件名()
Public Event 方法事件(ByVal 参数1 As String, ByVal 参数2 As Integer) '定义事件,然后就是激活事件
'最后可以看到,对 测试类 定义了两个属性、两个方法、两个事件
'类属性、事件和方法,特性是封装,继承,和多态。
End Class
以上