
GSerg писал(а):После каждой смены картинок ставь оператор DoEvents
for i = 0 to 1000000
a=a+1
next i
for i = 0 to 1000000
a=a+1
DoEvents
next i
For i = 1 To 2000000000: Next i
A.A.Z. писал(а):2 _NeoN_:
Спасибо, вроде понял!
Я сначала думал, что дело в Sleep'е, и уже хотел Sleep'ы заменять циклами типа!
- Код: Выделить всё
For i = 1 To 2000000000: Next i
X-BOND писал(а):A.A.Z. писал(а):2 _NeoN_:
Спасибо, вроде понял!
Я сначала думал, что дело в Sleep'е, и уже хотел Sleep'ы заменять циклами типа!
- Код: Выделить всё
For i = 1 To 2000000000: Next i
Самый большой недостаток этого метода, в том, что на разных машинах будет разная задержка во времени. К тому же использование ЦП подскочит до 100%
_NeoN_ писал(а):DoEvents передает на некоторое время управление системе.
_NeoN_ писал(а):DoEvents передает на некоторое время управление системе.
- Код: Выделить всё
for i = 0 to 1000000
a=a+1
next i
тут пока не выполнится цикл 1000000 раз ничего не произойдет. а вот так
- Код: Выделить всё
for i = 0 to 1000000
a=a+1
DoEvents
next i
так будут обрабатываться разные события, на кнопки на форме давить можно, короче обрабатываются все события... коряво как-то обьяснил но думаю все всё поняли =)
boevik писал(а):_NeoN_ писал(а):DoEvents передает на некоторое время управление системе.
Очень глубокое заблуждение.
DoEvents - позволяет программе обработать свою очередь сообщений.
А система (OS) и без DoEvents продолжает работать.
Boris_BGB писал(а):Вообще можно обойтись и без Shape с помощью графических методов!
A.A.Z. писал(а):Boris_BGB писал(а):Вообще можно обойтись и без Shape с помощью графических методов!
Ага! Можно вообще и писАть с их помощью, и рисовать, и раскрашивать (по одной точке)...![]()
A.A.Z. писал(а):Лично я понял вот так: в стандарте (без DoEvents) ЦП тратит 99% на выполнение чего-то (в данном случае - цикла), и пока не закончит его, на экране ничего нового не покажет, а DoEvents какую-то часть ЦП оставляет на выполнение других действий - нажатий на кнопки и т. д.
Сейчас этот форум просматривают: AhrefsBot и гости: 5