label1.caption ="1"   
由于label1.caption的值随时在变 所以我要判断他连续5秒是否为"1" 
也就是label1.caption的值在5秒内为1 那么PRINT“OK”。

解决方案 »

  1.   

    放一个timer控件
    Private iCount As Long
    Private Sub Form_Load()
    Timer1.Interval = 1000
    iCount = 0
    End SubPrivate Sub Timer1_Timer()
    If Label1.Caption = "1" Then
        iCount = iCount + 1
        If iCount = 5 Then '连续5秒
            Debug.Print "OK"
            iCount = 0
        End If
    Else
        iCount = 0 '计数器清零
    End If
    End Sub
      

  2.   

    没有好的办法
    label1.caption完全由你来操作, 你为什么不在那里做判断?
      

  3.   

    timer 不是实时的,
    比如你在1秒内那个label变成了1, 然后马上又变成了2.
    那么timer就找不到了所以你必须截获他的消息.
    但label是轻量控件, 就是vb自己绘制出来的.
    你需要拦截vb的实现. 很麻烦.  所以说办不到.
      

  4.   

    可以用两个变量来交替,当CAPTION改变的时候读现在的时间,和前一次改变的时候存下来的时间比较,看看有没有5秒的间隔。这样就不用TIMER了。
      

  5.   

    用label1.change()函数和timer
    在label1.caption变成1时,在change函数里启动timer,开始计数,到五就输出
    如果caption不=1时,停用timer
      

  6.   

    晕...lable不是有个change事件的么...在那里判断啊