2013-05-08 45 views
2

你好我的按鈕有問題。當我點擊它時,按鈕不會觸發該方法:按鈕點擊不發射它的方法VB.NET

Private Sub button1_Click(sender As System.Object, e As System.EventArgs) 
     'Initialize the capture device 
     grabber = New Capture() 
     grabber.QueryFrame() 
     'Initialize the FrameGraber event 
     AddHandler Application.Idle, New EventHandler(AddressOf FrameGrabber) 
     button1.Enabled = False 
    End Sub 

我在這裏錯過了什麼?任何幫助是真正的讚賞。謝謝。

+0

轉到設計器中的表單,然後雙擊該按鈕。它會轉到這種方法還是創建一個新的? – Yatrix 2013-05-08 16:44:39

+0

只需刪除按鈕並重新創建! – 2013-05-08 16:47:31

+0

@neknekmouh看到我的答案。 – Yatrix 2013-05-08 16:47:50

回答

3

應該有類似

Private Sub button1_Click(sender As System.Object, e As System.EventArgs) Handles button1.Click 

AddHandler button1.Click, AddressOf button1_Click 

我想它的vb.net和WinForms。與VB6或WPF是一個解決方案有點不同。

+0

你好,我現在遇到一個新問題,錯誤消息說:句柄子句需要一個WithEvents變量定義在包含類型或其基類型之一。 – 2013-05-08 16:50:36

+0

@neknekmouh:button1聲明是什麼? (右鍵單擊button1文本並轉到定義 – IvanH 2013-05-08 16:59:13

+0

對不起,我不知道在哪裏可以找到定義:( – 2013-05-08 17:01:00

0

變化的聲明是這樣的:

Private Sub button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click 
+0

忘記這是VB,你所要做的就是添加句柄。呵呵。 – Yatrix 2013-05-08 16:50:02

1
  1. 轉到窗體設計器。
  2. 選擇按鈕。
  3. 在屬性窗格中,默認情況下在右下方單擊「閃電箭」圖標。
  4. 找到「點擊」條目。
  5. 單擊右下方的小下拉箭頭並選擇「button1_click」。

該處理程序現在應該再次與您的按鈕單擊事件相關聯。

+0

如果你執行了上面的步驟2,「選擇按鈕」,那麼你應該有一個WithEvents聲明已經用於該按鈕(它在表單的隱藏設計器文件中)。您是否偶然手動編輯該文件並刪除聲明中的「WithEvents」部分? – 2013-05-08 17:01:32

+0

嘿,我已經解決了它!感謝您的幫助。我在我的按鈕中添加了WithEvents,上帝保佑 – 2013-05-08 17:13:21