Каковы преимущества использования Doevents по перекраске в пользовательской форме в VBA?
Вопрос
Каковы преимущества использования Doevents по перекраске в пользовательской форме в VBA? Это из -за производительности, для минимизации раздражения таких вещей, как мерцание экрана, или когда вам нужно обновлять больше, чем просто форма?
Ищете некоторое разъяснение в разнице от точки зрения VBA.
Решение
В целом VB6 и VBA используют DoEvents, чтобы сообщить процессору продолжать обработку сообщений в очереди сообщений. Используется, когда в процессоре используется интенсивная обработка операции обработки, и поэтому пользовательский интерфейс программы все еще реагирует на все другие события.
Пример: Вы выполняете интенсивный алгоритм поиска, если вы не добавили DoEvents, программа может повесить до того, как она не закончит поиск. С другой стороны, если вы добавите DoEvents (на петлю поиска, скажем, программа не зависает вверх и все равно может обрабатывать все программные события, такие как (Отмена) Отмена поиска.
РЕДАКТИРОВАТЬ: Я вижу это, так как Doevents является более полным, чем перекрасить, поскольку он имеет дело со всеми типами событий, не только обрабатывая мерцание/повествование пользовательского интерфейса.