簡介
下邊是vb的一個窗體dblclick事件:
Private Sub form_dblClick()
Print "你用滑鼠左鍵單擊按鈕兩下就發生雙擊事件"
End Sub
如果在同一個程式中的同一個控制項同時有click事件和dblclick事件,那么在dblclick事件發生之前發生click事件。簡單地說,dblclick事件的發生必須連帶一個click事件。下面發生在同一個按鈕上的click事件與dblclick事件的代碼:
' 窗體的click事件:
Private Sub form_click()
Print "你單擊了窗體!"
End Sub
' 窗體的dblclick事件:
Private Sub form_dblClick()
Print "你雙擊了窗體"
End Sub
執行程式,雙擊窗體,則在窗體上顯示“你單擊了窗體”,“你雙擊了窗體”,這說明在回響dblclick的同時(正確的說是之前)回響了click事件。其實,顧名思義,雙擊就是兩次單擊嘛,那當然要回響單擊事件。
但你可能會有這么個疑問,那就是,為什麼不是回響兩次click或兩次click事件和一次dblclick事件,而是只回響一次click和一次dblclick事件。是這樣的,vb在處理這個問題時(我認為)是這樣處理的,那就是將第一次的點擊看著是單擊了滑鼠左鍵,即回響一個click事件。而在處理第二個點擊時,就不再單一地看成是一次點擊了,而是把它與前一次的點擊一起構成了一個雙擊,即回響了dblclick事件。