vb.net 事件相关概念的入门理解

前端之家收集整理的这篇文章主要介绍了vb.net 事件相关概念的入门理解前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

vb.net 自定义事件在实际编程应用中,可以摆脱系统事件的束缚和限制,如果能灵活的运用,可以尽情发挥。

事件申明如下:

event event_name(parameterlist)

在事件所在的类里还得必须声明一个过程来触发事件

sub execute_envet

raiseevent event_name

end sub

在定义事件之后,还得为事件指定相应的事件过程,否则,就没有任何意义了,事件过程的参数列表必须得和事件的参数列表的完全匹配

事件和事件过程怎样关联呢?

有以下两种方式:

addhandler和handles

addhandler 比较灵活,可以根据自己的需要在动态的指定事件的事件过程。

addhandler event_name,addressof event_sub

handles是标准方式。但缺乏灵活性

在使用handles 为事件处理程序制定事件时,必须要withevents 声明事件对象。

下面用代码来说明:

//事件类

class event_class

event test_event()

sub execute_event()

rasiseevent test_event()

end sub

end class

使用addhandler 关联

class test_addhandler

dim e_c as new event_class

// 事件处理过程

sub event_sub()
msgBox("Addhandler test")

end sub

sub s_1

addhanlder e_c.test_event,addressof event_sub

e_c.execute_event()

RemoveHandler e_c.test_event,addressof event_sub

end sub

sub event_sub1()
msgBox("Addhandler test1")

end sub

sub s_2

addhanlder e_c.test_event,addressof event_sub1

e_c.execute_event()

end sub

end class

使用handler关联

class test_handler

dim withevents e_c as new event_class

// 事件处理过程

sub event_sub() handles e_c.test_event
msgBox("handles test")

end sub

sub s_1

e_c.execute_evnet()

end sub

end class

猜你在找的VB相关文章