none
[VB2008]如何讓 ButtonA 按下時,先執行 ButtonB事件,再接著作ButtonA 的事件? RRS feed

  • 問題

  • 請教各位大大:

    我的程式其中有2個Button--ButtonA 跟 ButtonB ;想讓ButtonA 按下時,先執行 ButtonB事件,再接著作ButtonA 的事件,

    雖然最簡單的方式是COPY  ButtonB.click 的程式碼到 ButtonA.click 上,但是因為程式碼內容比較多,有比較便捷的方式嗎?拜託指教,謝謝

    2010年5月14日 上午 08:48

解答

  • Hi,

    也可以把Click內的程式切出成另一個方法

    在Click中呼叫

     

    或是使用AddHandler去繫上

    Public Class Form1
      Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        MsgBox("2")
      End Sub
    
      Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        MsgBox("1")
      End Sub
    
      Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        AddHandler Button2.Click, AddressOf Button2_Click
    
        AddHandler Button1.Click, AddressOf Button2_Click
        AddHandler Button1.Click, AddressOf Button1_Click
      End Sub
    End Class
    


    謙卑學習,持之以恆,才能不斷的Level Up http://www.dotblogs.com.tw/larrynung/
    • 已標示為解答 落跑羊 2010年5月14日 上午 10:21
    2010年5月14日 上午 09:41

所有回覆

  • Button.PerformClick 方法

     


    MSDN 文件庫很重要
    回應幫助你的人是一種禮貌, 良好的禮貌有助於激發大家對你問題回應的熱情
    進步的人會找尋自己程式中的缺點,半桶水則把自己程式的錯誤推到不相干事物的身上
    2010年5月14日 上午 08:52
    版主
  • Hi,

    也可以把Click內的程式切出成另一個方法

    在Click中呼叫

     

    或是使用AddHandler去繫上

    Public Class Form1
      Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        MsgBox("2")
      End Sub
    
      Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        MsgBox("1")
      End Sub
    
      Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        AddHandler Button2.Click, AddressOf Button2_Click
    
        AddHandler Button1.Click, AddressOf Button2_Click
        AddHandler Button1.Click, AddressOf Button1_Click
      End Sub
    End Class
    


    謙卑學習,持之以恆,才能不斷的Level Up http://www.dotblogs.com.tw/larrynung/
    • 已標示為解答 落跑羊 2010年5月14日 上午 10:21
    2010年5月14日 上午 09:41
  • 感謝大大的回覆,小弟試看看去,3Q
    2010年5月14日 上午 10:23