0
我想在一個WinForms mouseDown事件,能夠做一些代碼,直到一定的秒或MouseUp事件已經被解僱掉do while循環下去,直到按鈕狀態已經改變
我想是這樣這
Dim counter As Integer = 0
Do Until Button.Key IsNot MouseDown
counter += 1
If counter > 3
Exit Do Loop
End If
Application.DoEvents()
Loop
現在我有像
seconds = 0
m_mouseButtonIsNotDown = False
Do Until m_mouseButtonIsNotDown
If e.Button = Windows.Forms.MouseButtons.Left Then
seconds += 1
If seconds > 5 Then
m_mouseButtonIsNotDown = True
End If
End If
Application.DoEvents()
Loop
我尋找所需的行爲方式是,如果他們讓一定量的循環處理的範圍內去按鈕如果它只是一個簡單的鼠標點擊事件的代碼。如果mousedown已被保存超過3或5秒,則切換到拖放模式,以便它們可以將所需的行移動到另一個datagridview。我試圖使用Timer和StopWatch類,它不工作,我也不會期望它。如果我有鼠標點擊事件和mousedown事件,因爲mousedown在基本點擊事件上執行,它不起作用。有任何想法嗎?請記住,它不能依賴於mouseUp事件,因爲拖放操作無法進行。
爲什麼你一直試圖改變代碼片段?它編譯得很好,讓HitTestInfo可用對其他用途很重要。 –
@HansPassant它不會編譯,除非您告訴您調暗的是什麼。只是說昏暗的命中= DataGridView1.HitTest(downPos.X,downPos.Y),而不作爲條款不編譯 –
每個人都使用選項推斷,缺省設置。如有必要,請提出一個問題。 –