2012-09-14 81 views
0

當使用flash時,我可以通過訪問事件的「target」屬性來獲得事件的焦點。VB.Net中的e.target

所以如果我記得,它是類似的東西。

button1.addEventListener(mouse_click, doSomething); 

doSomething(e: Event){ 
    e.target.size = 50000; 
} 

而我正在尋找VB中的等價物。

如果你能給我這是所有語言的通用名稱,我會倍加感激。我不太知道,從「event.target VB.net等效一邊搜索什麼,而這不返回任何東西

在此先感謝

編輯:。爲這些新的閃光由焦點,我的意思是被點擊的物理對象。因此,考慮將訪問點擊按鈕的尺寸的例子。

+1

您正在尋找在VB.NET掛鉤的事件處理程序 - [事件處理程序VB.NET(https://www.google.co.uk/搜索?q = event + handler + vb.net&sugexp = chrome,mod = 9&sourceid = chrome&ie = UTF-8) – Oded

+1

[Windows Forms中的事件處理](http://msdn.microsoft.com/zh-cn/library/aa983610 %28v = vs.71%29.aspx) –

+0

這些都非常有幫助,謝謝。 –

回答

0

知道了!

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.button.onclick.aspx#Y0

Sub GreetingBtn_Click(ByVal sender As Object, ByVal e As EventArgs) 
     'When the button is clicked, 
     'change the button text, and disable it. 

     Dim clickedButton As Button = sender 
     clickedButton.Text = "...button clicked..." 
     clickedButton.Enabled = False 
    End Sub 

第一個參數(由默認的發件人)引用被聚焦的物體。您可以像訪問任何其他普通變量一樣訪問它,但它的信息不會出現在自動完成列表中,除非您將其設置爲「與」特定數據類型相同。

所以我結束了這個

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

當你開始使用VB時,確保將Option Strict On設置爲捕獲類型的角色(比如'Dim clickedButton As Button = sender')。另外,請務必在適當的時候標記您接受的回覆。 –

1

在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 
+0

雖然這超出了我當時所需要的範圍,但這是一個有趣的知識點。 這是我第一次看聲明性編程,所以謝謝。 –