怎么判断vb中按钮已经被按下

各位前辈们 我想当按钮被点住时进度条持续增长,当按钮松开时进度条持续减少,怎样获取按钮点击下去的事件啊
还有就是怎么让进度条的value持续加而不是点击一下加一个值
谢谢
详细点好不 初学者 这两个事件在哪里写啊

这个好办,先在通用部分定义一个全局变量,如add为布尔型,添加一个Timer控件,在Command按钮的MouseDown事件中设add的值为TRUE,激活Timer控件在Command按钮的MouseUp事件中设add的值为FALSE,在Timer控件的Timer事件中判断add的值,如果为TRUE,则进度条的Value为Value+1,否则为进度条的Value-1
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-08-20
VB中要解决这样的问题还需要加一个Timer控件来实现的!
在mousedown事件中触发Timer中的动作
然后在mouseup事件中中止Timer中的动作
这样就实现了按下时持续进度条的增长,放开时就中止了
至于进度条持续变化的快慢则可通过Timer的时间钟间隔来控制
第2个回答  2009-08-20
Option Explicit

Dim IsStart As Boolean

Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
IsStart = True
End Sub

Private Sub Command1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
IsStart = False
End Sub

Private Sub Form_Load()
With Timer1
.Enabled = True
.Interval = 100
End With
With ProgressBar1
.Max = 100
.Min = 0
.Value = 0
End With
End Sub

Private Sub Timer1_Timer()
If IsStart Then
ProgressBar1.Value = ProgressBar1.Value - (ProgressBar1.Value < ProgressBar1.Max)
Else
ProgressBar1.Value = ProgressBar1.Value + (ProgressBar1.Value > ProgressBar1.Min)
End If
End Sub
第3个回答  2009-08-20
MouseDown 激活一个 Timer,用 Timer 的 Time 或 Tick 事件增加进度条,MouseUp 和 MouseLeave 事件将 Timer 屏蔽,同时启动另一个 Timer,减少进度条
第4个回答  2009-08-20
onmousedown 事件 触发开始
onmouseup 时间 触发结束
相似回答