Функция DoEvents

Важно : Тази статия е преведена машинно – вижте отказа от отговорност. Английската версия на тази статия за справка можете да намерите тук .

Забележка : Функция, метод, обект или свойство, описани в тази тема е забранено, ако Microsoft Jet Expression Service се изпълнява в ограничителен режим, който не позволява на оценката на потенциално опасни изрази. За повече информация за ограничителен режим потърсете "ограничителен режим" в "Помощ".

Връща управлението, за да може операционната система да обработи други събития.

Синтаксис

DoEvents ( )

Забележки

Функция DoEvents връща число, показващо броя на отваряне на формуляри в самостоятелна версии на Microsoft Visual Basic, като например Visual Basic, Специалист издание. DoEvents връща нула във всички други приложения.

DoEvents предава управлението на операционната система. Управлението се връща, след като операционната система завърши обработката на събитията в опашката и се изпратят всички клавиши в опашката SendKeys.

Функцията DoEvents е най-полезна за прости неща като разрешаване на потребител да отмени процес, след като е стартиран, например търсене на файл. За продължителни процеси предаването на управлението на процесора е по-добре да се извършва, като се използва таймер или като се делегира задачата на ActiveX EXE компонент. В последния случай задачата може да продължи напълно независимо от вашето приложение и операционната система се грижи за многозадачния режим и времеделението.

Всеки път, когато предадете временно управлението на процесора на процедура за обработка на събитие, уверете се, че процедура не се изпълнява отново от друга част на вашия код, преди първото изпълнение да завърши; това може да доведе до непредсказуеми резултати. Освен това не използвайте DoEvents, ако е възможно други приложения да взаимодействат с вашата процедура по непредсказуем начин по времето, когато сте предали управлението.

Пример

Забележка : Примерите по-долу илюстрират използването на тази функция във Visual Basic for Applications (VBA). За повече информация относно работата с VBA изберете Справочни материали за разработчици в падащия списък до Търсене и въведете един или няколко термина в полето за търсене.

Този пример използва функцията DoEvents, за да предава управлението на операционната система веднъж на всеки 1000 повторения на цикъла. DoEvents връща броя на отворените Visual Basic формуляри, но само когато приложението хост е Visual Basic.

' Create a variable to hold number of 
' Visual Basic forms loaded and visible.
Dim I, OpenForms
For I = 1 To 150000 ' Start loop.
If I Mod 1000 = 0 Then ' If loop has repeated
' 1000 times.
OpenForms = DoEvents ' Yield to operating system.
End If
Next I ' Increment loop counter.

Забележка : Отказ от отговорност за машинен превод: Тази статия е преведена от компютърна система без човешка намеса. Microsoft предлага тези машинни преводи, за да помогне на потребителите, които не говорят английски, да се възползват от съдържанието за продукти, услуги и технологии на Microsoft. Тъй като статията е преведена машинно, е възможно да съдържа грешки в речника, синтаксиса и граматиката.

Споделяне Facebook Facebook Twitter Twitter Имейл Имейл

Беше ли полезна тази информация?

Чудесно! Друга обратна връзка?

Как можем да подобрим това?

Благодарим ви за обратната връзка!

×