Выполняет все Незаконченные События системы Windows.

NoteПримечание

Вы не можете выполнять команду DOEVENTS используя косвенный вызов, заключив ее в круглые скобки (()); например, "DOEVENTS( )".

Вы можете использовать команду DOEVENTS в достаточно простых случаях, например, для отмены длительного выполнения процесса поиска требуемого файла. Длительные процессы значительно загружают Процессор рабочей станции, для этого лучше использовать пользовательские Контролы, управляемые объектом Timer или с помощью передачи рассматриваемой задачи некоторому объекту COM (Server executable (.exe)). В этом случае, подобные задачи передаются за пределы вашего Приложения и выполняются по правилам операционной системы Windows, которая оптимизирует использование памяти и распределение процессорного времени между выполняемыми задачами.

Caution noteОбратите Внимание

Всякий раз, при выполнении некоторой задачи в программном коде некоторого События, вам необходимо отслеживать, чтобы данное событие не запускалось из других фрагментов вашего Приложения до того момента, пока не завершился первый процесс. Такие ситуации обычно приводят к непредсказуемым результатам, вплоть до разрушения Приложения. Кроме того, не используете команду DOEVENTS, если другие Приложения могут обратиться к вашему Приложению в тот момент, когда вы запускаете некоторый процесс, связанный с рассматриваемым Событием.

DOEVENTS [FORCE]

Параметры

FORCE

Обеспечивает остановку выполнения программного кода Visual FoxPro пока выполняется системное событие Windows, например такое как перемещение указателя мышки.

NoteОбратите Внимание

Использование ключевой опции FORCE усиливает выполнение рассматриваемого программного кода, уплотняет выполнение. Следовательно, вам нужно быть особенно внимательным при примерении команды DOEVENTS FORCE в критичных циклах, таких как DO WHILE.

Expand imageКомментарии

Когда значение свойства AutoYield установлено в = False (.F.), программный код процедуры выполняется, все активные события текущего Окна или Формы выстраиваются в очередь на обработку. Команда DOEVENTS инициирует (запускает) процесс обслуживания указанной очереди Событий и других фрагментов программного кода, связанных с рассматриваемыми незаконченными событиями текущего Окна или Формы. Если в указанной очереди отсутствуют незаконченные События, система  Visual FoxPro игнорирует текущую команду DOEVENTS и продолжает выполнение программного кода дальше.....

Expand imageСм. также