| Как в программе переждать паузу между выполнениями команд |
|
Предположим, вам надо подождать несколько секунд перед выполнением каких-либо действий в вашей программе. Вашему вниманию предлагается два решения проблемы. Первое решение прислали из группы SOOBCHA_VB, второе - где-то нашел в бесконечных примерах на моем жестком диске. ВАРИАНТ 1. Если вам нужно переждать несколько СЕКУНД Function Delay(Pause As Single) Dim Start As Single Start = Timer Do While Timer < Start + Pause DoEvents Loop End Function ВАРИАНТ 2. Если вам нужно переждать несколько МИНУТ Public Sub Sleeping(NumberOfMinute As Double) Dim FinishTime As Date FinishTime = DateAdd("n", NumberOfMinute, Now) Do Until FinishTime <= Now DoEvents Loop End Sub ПРОВЕРКА ВЫПОЛНЕНИЯ КОДА ВАРИАНТА 1 ИЛИ 2 Private Sub Form_Paint() Print Time 'выберите, какой вариант вам больше по душе Delay (5) 'или Sleeping (5) 'и в том, и в другом случае указывается время в секундах Print Time End Sub ВАРИАНТ 3. Если вам нужно переждать несколько СЕКУНД... Private Declare Sub sapiSleep Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Long) Private Sub Form_Paint() Print Time() Call sapiSleep(1000) 'в миллисекундах Print "Прежде чем напечататься, прошло 1000 миллисекунд" Print Time() End Sub
Источник: http://www.vbnet.ru/ |