例如:10秒后关闭form1,每秒提示一次:“还有x秒后自动关闭”。

解决方案 »

  1.   

    增加一个Timer 控件.用他来处理 
      

  2.   

    1楼说得正确,增加一个Timer 控件,用它来处理
    Option Explicit
        Dim sum As IntegerPrivate Sub Command1_Click()
        Timer1.Enabled = True
    End SubPrivate Sub Form_Load()
        Timer1.Interval = 1000
        Timer1.Enabled = False
        sum = 10
    End SubPrivate Sub Timer1_Timer()
        Label1.Caption = "还有" & sum & "秒后自动关闭"
        sum = sum - 1
        If sum <= 0 Then
            Unload Me
            sum = 0
            Timer1.Enabled = False
        End If
    End Sub
      

  3.   


    '以下代码在[窗体中,请增加一个标签,一个按扭,一个Time控件
    Option Explicit
    Dim NowDate As Long
    Private Sub Command1_Click()
      NowDate = Hour(Time) * 3600 + Minute(Time) * 60 + Second(Time) + 10
      Timer1.Interval = 200
      Timer1.Enabled = True
    End SubPrivate Sub Timer1_Timer()
     Dim NowDate1 As Long
     NowDate1 = Hour(Time) * 3600 + Minute(Time) * 60 + Second(Time)
     If NowDate - NowDate1 > 0 Then
       Label1.Caption = "还有" & NowDate - NowDate1 & "秒关闭窗口"
     Else
       Unload Me
     End If
    End Sub
      

  4.   

    我知道,我的时间没有控制好.
    如果是晚上12:00.的时候出会问题.但是谁会半夜三更去开关程序.不要说我找理由,当初我在写的时候就想说的.要改很容易,判断 Hour(Time) 是不是23 再判断Minute(Time)是不是59.再判断Second(Time)是不是大于50.就行了.如果上面条件满足.再作相应处理.以上只是一个示例.
      

  5.   

    Option Explicit
        Dim sum As IntegerPrivate Sub Command1_Click()
        Timer1.Enabled = True
    End SubPrivate Sub Form_Load()
        Timer1.Interval = 1000
        Timer1.Enabled = true
        sum = 10
    End SubPrivate Sub Timer1_Timer()
        Label1.Caption = "还有" & sum & "秒后自动关闭"
        sum = sum - 1
        If sum = 0 Then
            Timer1.Enabled = false
            Unload Me
        End If
    End Sub