延时求教,谢谢!!!Private Sub Form_Load()
PicTop.Top = 0
For i = 1 To FrmThumb.LVPic.ListItems.Count
 x = 0
   Me.Pic = LoadPicture(FrmThumb.LVPic.ListItems.Item(i).Key)
   ZoomFix
   Do Until Timer1.Enabled = False
   DoEvents
   Loop
   Next i
End Sub我想在判断Timer1.Enabled = False后,再延时30秒(即让画面保持30秒后,再进行下一个循环),求教该如何做,谢谢!!!

解决方案 »

  1.   

    Private Sub Form_Load()
    dim t0 as long
    PicTop.Top = 0
    For i = 1 To FrmThumb.LVPic.ListItems.Count
     x = 0
       Me.Pic = LoadPicture(FrmThumb.LVPic.ListItems.Item(i).Key)
       ZoomFix
       Do Until Timer1.Enabled = False
       DoEvents
       Loop
       t0=timer
       do until timer-t0>=30000
          doevents
       loop
       Next i
    End Sub
      

  2.   

    延时程序:
    Private Declare Function CreateEvent Lib "kernel32.dll" Alias "CreateEventA" ( _
         ByRef sa As Long, _
         ByVal bManualReset As Long, _
         ByVal bInitialState As Long, _
         ByVal lpName As String) As Long
    Private Declare Function WaitForSingleObject Lib "kernel32.dll" ( _
         ByVal hHandle As Long, _
         ByVal dwMilliseconds As Long) As Long
    Private Declare Function CloseHandle Lib "kernel32.dll" ( _
         ByVal hObject As Long) As Long
    Private Const INFINITE As Long = &HFFFFFFFF
    Private hEvent As Long
    Private Function WaitFor(ByVal nMilliseconds As Long)
       WaitForSingleObject hEvent, nMilliseconds
    End Function
    Private Sub Command1_Click()
        WaitFor 5000
        MsgBox "Ok ... 时间到了!"
    End Sub
    Private Sub Form_Load()
        hEvent = CreateEvent(ByVal 0, False, False, "")
    End Sub
    Private Sub Form_Terminate()
        CloseHandle hEvent
    End Sub