我想在外部库发生事件后立即调用函数。
我有一系列相机对象(不同的相机),一旦他们抓取图像(外部触发)就会创建一个事件。摄像机由外部库(Basler)定义,并在代码中定义,因此事件定义如下:
cameras(i).StreamGrabber.ImageGrabbed
我创建了一个子
Sub ImageGrabEvent(sender As Object, e As EventArgs)
MsgBox("Aha")
End Sub</code>
并尝试使用
在主要部分注册AddHandler cameras(i).StreamGrabber.ImageGrabbed, AddressOf (ImageGrabEvent)
并尝试了
AddHandler cameras(i).StreamGrabber.ImageGrabbed, ImageGrabEvent()
以及“新”或其他的变体。
额外挑战:任何相机都可以举起活动,我怎样才能在我的潜水艇中识别出哪个相机?
答案 0 :(得分:1)
你不应该在处理程序方法周围有括号(括号),所以这个:
AddHandler cameras(i).StreamGrabber.ImageGrabbed, AddressOf (ImageGrabEvent)
应该是:
AddHandler cameras(i).StreamGrabber.ImageGrabbed, AddressOf ImageGrabEvent
sender
对象为您提供引发事件的对象