加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

VB中RaiseEvent语句的功能及用法

发布时间:2020-12-16 22:54:15 所属栏目:大数据 来源:网络整理
导读:Creat a new class named Class1,it's codes like this: Public Event MyEvent() Public Sub RaiseTheEvent() 'some other codes here RaiseEvent MyEvent End Sub Create a new form,draw a command on it named Command1,double the command to open the c

Creat a new class named Class1,it's codes like this:

Public Event MyEvent()

Public Sub RaiseTheEvent()
'some other codes here
RaiseEvent MyEvent

End Sub

Create a new form,draw a command on it named Command1,double the command to open the code.

It codes like this:

Option Explicit

Private WithEvents Myclass As class1


Private Sub Command1_Click()
Set Myclass = New class1
Call Myclass.RaiseTheEvent 'In this sub event is raised.

End Sub

Private Sub Myclass_MyEvent()'this isthe sub to dill with the event.
MsgBox "class1's event occured."
End Sub

Start the application and Click the button will raise the event.

引发在一个类、窗体、或者文档中的模块级中声明的一个事件。

语法

RaiseEvent eventname [(argumentlist)]

必需的 eventname 是在模块 中声明的,并且符合 Basic 变量命名约定的一个事件的名称。

RaiseEvent 语句的语法有如下部分:

部分 描述
Eventname 必需的。所引发的事件的名称。
Argumentlist 可选的。用逗号分隔的变量、数组,或者表达式的列表。argumentlist 必须用圆括号括起来。如果没有参数,则圆括号必须被忽略。

说明

如果在事件被引发的模块内该事件没有被声明,就会发生一个错误。下面这个程序片段说明了一个事件的声明以及一个引发该事件的过程。

在类模块的模块级声明一个事件



引发该事件。
   

'Event LogonCompleted (UserName as String)Sub'RaiseEvent LogonCompleted ("AntoineJan")End Sub

如果在 RaiseEvent 中该事件没有参数,包括空的圆括号,则对该事件的调用就会导致一个错误。不能使用 RaiseEvent 来引发在模块中没有明确定义的事件。例如,如果一个窗体有一个 Click 事件,则不能使用 RaiseEvent 来引发该窗体的 Click 事件。如果在窗体模块 中声明了一个 Click 事件,则它将覆盖窗体自己的 Click 事件。仍然可以使用调用该事件的正常语法来调用该窗体的 Click 事件,但是不能使用 RaiseEvent 语句。

事件的引发是根据连接建立的顺序来进行的。因为事件可以有 ByRef 参数,所以后来连接的进程可能接收已经被一个更早的事件处理程序更改的参数。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读