Applies ToAccess за Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

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

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

Синтаксис

DoEvents ( )

Забележки

Функцията DoEvents връща цяло число, представящо броя на отворените формуляри в самостоятелни версии на Microsoft Visual Basic, като например Visual Basic, Professional Edition. 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, OpenFormsFor 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 IfNext I    ' Increment loop counter.

Нуждаете ли се от още помощ?

Искате ли още опции?

Разгледайте ползите от абонамента, прегледайте курсовете за обучение, научете как да защитите устройството си и още.

Общностите ви помагат да задавате и отговаряте на въпроси, да давате обратна връзка и да получавате информация от експерти с богати знания.