e、 VB.net中的目标

e、 VB.net中的目标,vb.net,events,attributes,target,Vb.net,Events,Attributes,Target,使用flash时,我可以通过访问事件的“target”属性来获得事件的焦点 所以如果我记得的话,那是类似于 button1.addEventListener(mouse_click, doSomething); doSomething(e: Event){ e.target.size = 50000; } 我正在寻找VB中的等效项 如果你能告诉我这是所有语言的通用名称,我将倍感感激。我不知道除了“event.target VB.net等价物”之外,还需要搜索什么,但这并没有返回任何内

使用flash时,我可以通过访问事件的“target”属性来获得事件的焦点

所以如果我记得的话,那是类似于

button1.addEventListener(mouse_click, doSomething);

doSomething(e: Event){
    e.target.size = 50000;
}
我正在寻找VB中的等效项

如果你能告诉我这是所有语言的通用名称,我将倍感感激。我不知道除了“event.target VB.net等价物”之外,还需要搜索什么,但这并没有返回任何内容

提前谢谢


编辑:对于那些刚接触flash的人来说。所谓焦点,我指的是被点击的物理对象。因此给出的示例是访问被点击按钮的大小。

在VB中,可以使用WithEvents关键字声明性地连接事件处理程序,也可以强制使用AddHandler连接事件处理程序

Private WithEvents myButton

' OR

Public Sub New
  Dim newButton = New Button()
  AddHandler newButton.Click, AddressOf MyClickHandler
End New

'To consume it you declare a method as follows:
' The Handles clause is used when declaring WithEvents
Private Sub MyClickHandler(sender As Object, e As EventArgs) Handles myButton.Click
  ' The sender has a handle on the object that raised the event (aka the button)
  Dim btn = DirectCast(sender, Button)
  btn.Size = New Size(500, 500)

End Sub
明白了

第一个参数(默认情况下为sender)引用聚焦对象。您可以像访问任何其他普通变量一样访问它,但除非将其设置为“特定”数据类型,否则其信息不会显示在自动完成列表中

所以我就这样结束了

    Private Sub nw_btn_Click(ByVal sender As System.Windows.Forms.Button, ByVal e AsSystem.EventArgs) Handles nw_btn.Click
        sender.Hide()
    End Sub

您正在寻找在VB.NET中连接一个事件处理程序-这两个都非常有用,谢谢。虽然这超出了我当时需要的范围,但仍然是一个有趣的知识点。这是我第一次研究声明式编程,所以谢谢您。当您开始使用VB时,请确保将Option Strict打开捕获类型转换(如
Dim clickedButton As Button=sender
)。此外,请确保根据需要标记接受的响应。
    Private Sub nw_btn_Click(ByVal sender As System.Windows.Forms.Button, ByVal e AsSystem.EventArgs) Handles nw_btn.Click
        sender.Hide()
    End Sub