VB 的命令按钮 如何实现长按功能?!

2024-12-02 17:25:01
推荐回答(3个)
回答1:

楼上二位只给出了用到的事件,在此我要给出具体方法。画一个Timer控件似乎会比较完美,将它的Interval设为长按的反应时间(毫秒),Enabled设为False。为了使你的代码更直观,推荐你自己写一个过程,作为按钮被长按时的代码。在通用(声明)处打如下代码:
Private Sub Command1_LongPress()
Timer1.Enabled = False '此句为了防止本过程被重复执行
'要在这里打上Command1长按时要执行的代码
End Sub
完成后,就可以用Command1原有的MouseDown、MouseUp事件配合这个Timer1来定时触发Command1_LongPress过程了。在Command1的MouseDown中打
Timer1.Enabled = True '按下按钮即开始计时
在Command1的MouseUp中打
Timer1.Enabled = False '松手即停止计时
在Timer1的Timer中打
Command1_LongPress
大功告成了。如果有什么问题或没达到效果可以追问。

回答2:

Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

End Sub

用这个,上面的事件是表示,在命令按钮按下鼠标,
Private Sub Command1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

End Sub

再配合上面的那个鼠标松开事件,就可以达到你要的长按功能了

回答3:

mousedown事件触发就可以