有关handles 的问题

zzmdegm 2005-07-28 01:00:18
sub 小王扣钱() handles 玩游戏 与 sub 小王扣钱()有什么区别呢?

handles 在此处是起什么作用的呢?

handles 与委托:AddHandler event, AddressOf eventhandler又有什么联系呢?

比如:(1)静态处理
sub 小王扣钱() handles 玩游戏
sub 小刘扣钱() handles 玩游戏
(2)动态处理
Addhandler 玩游戏, Addressof 小王.扣钱()
Addhandler 玩游戏, Addressof 小刘.扣钱()
当“sub 小王扣钱() handles 玩游戏”没有“handles 玩游戏”时
“Addhandler 玩游戏, Addressof 小王.扣钱()”能不能用呢?
...全文
151 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzmdegm 2005-07-29
  • 打赏
  • 举报
回复
up
zzmdegm 2005-07-28
  • 打赏
  • 举报
回复
可以参看:
http://blog.csdn.net/Latitude/archive/2004/02/05/17244.aspx

http://blog.csdn.net/latitude/archive/2004/02/05/17246.aspx
zzmdegm 2005-07-28
  • 打赏
  • 举报
回复
Private Sub btnProtected_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnProtected.Click

MsgBox("派生的保护按钮")

End Sub
其中:
sender在形参中表示引发事件的源头

e,表示的是事件数据,就是一个事件激发所需要的状态信息。在事件引发时不向事件处理程序传递状态信息的事件会将e设为Eventargs。如果事件处理程序需要状态信息,则应用程序必须从此类派生一个类来保存数据。比如Mousedown事件,系统需要判断mouse的位置、判断是左中右哪个键点击了、判断点击了几下等等,因此该e就必需是System.Windows.Forms.MouseEventArgs类的实例。”

Handles关键字就是用于声明代码是要处理哪个事件的处理过程,如:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _

Handles Button1.Click, Button2.Click

Select Case sender.name

Case "Button1"

MsgBox("你点击的是button1")

Case "Button2"

MsgBox("你点击的是button2")

End Select

End Sub
在Handles后面写了两个事件的声明,就可以在同一段代码中对两个对象进行控制
cyhweb 2005-07-28
  • 打赏
  • 举报
回复
handles 让过程与事件联系起来
AddHandler event, AddressOf eventhandler 不是委托它是运行时过程与事件联系起来

当“sub 小王扣钱() handles 玩游戏”没有“handles 玩游戏”时
“Addhandler 玩游戏, Addressof 小王.扣钱()”能用

16,555

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧