Функция DoEvents Visual Basic
Обикновено програмистът очаква Windows (и Visual Basic) постоянно да наблюдава и реагира на всички събития. От друга страна, много време се отделя за различни видове изчисления или сортиране на данни. Въпреки това, не винаги е желателно да попречите на приложението Ви Visual Basic да реагира на събития. Ако се създаде процедура, при която много време ще бъде заето от различни видове изчисления, е необходим механизъм за наблюдение на състоянието на операционната система и реагиране на различни видове събития.
Функцията, която изпълнява този вид задачи, се нарича DoEvents. Където и да се появи това изявление в програмата, то сигнализира на Visual Basic, че контролът е прехвърлен към операционната система за обработка на всички събития. (Windows съхранява последователност от събития в опашката, както и натискания на клавиши в опашката SendKeys.) DoEvents не може да се използва в събитие, което се извиква няколко пъти. Например процедурата за събитие Click може да бъде извикана отново с щракване на мишката. Ако забравите за това, можете лесно да организирате безкраен цикъл в програмата.
Цикъл, който се изпълнява само когато няма събития, се нарича цикъл на изчакване. Такива цикли се създават в рамките на специализирана подпроцедура на име Main и се свързват с всеки програмен модул. Във всеки проект има само една Основна процедура. Форматът му е както следва:
Основна ()
Do While DoEvents ()
'Кодът се изпълнява по време на цикъла на изчакване