|
ничего не делать
|
|||
---|---|---|---|
#18+
как "ничего не делать" во время исполнения кода? т.е. грузится иннет-страница. я жду её загрузки так: Код: vbnet 1. 2. 3.
в итоге код отрабатывает впустую, загрузка ЦП на 100%, вентили и процессор гудят, обжигая мне руки если юзать wait(или слип, не помню), то, кажется, весь код тормозится. как правильно ждать какое-то событие? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.06.2012, 10:05 |
|
ничего не делать
|
|||
---|---|---|---|
#18+
BelowZeroTooCold, Семафоры попробуй ... |
|||
:
Нравится:
Не нравится:
|
|||
05.06.2012, 10:12 |
|
ничего не делать
|
|||
---|---|---|---|
#18+
СемафорBelowZeroTooCold, Семафоры попробуй как это поможет? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.06.2012, 10:44 |
|
ничего не делать
|
|||
---|---|---|---|
#18+
Кинь таймер и проверяй состояние в нем с интервалом 500 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.06.2012, 12:21 |
|
ничего не делать
|
|||
---|---|---|---|
#18+
TpaBkaКинь таймер и проверяй состояние в нем с интервалом 500 просто есть много мест, где нужно ждать загрузки... сделал так: Код: vbnet 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.06.2012, 13:10 |
|
ничего не делать
|
|||
---|---|---|---|
#18+
нужен: один таймер. переменная для отсчета, переменная желаемого состояния и условия. всё в одном таймере делай для себя отображения статусов в своем информере типа Label1.Caption = ТекущееСостояниеТаймера:Label2.Caption = ТекущийРежим и т.д. В рабочем состоянии программы потом удалишь. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.06.2012, 21:40 |
|
ничего не делать
|
|||
---|---|---|---|
#18+
Может быть пример с текст боксом поможет? Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2012, 15:47 |
|
ничего не делать
|
|||
---|---|---|---|
#18+
Нет, кажется с WaitMessage так делать не надо. Сорри. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2012, 15:52 |
|
ничего не делать
|
|||
---|---|---|---|
#18+
создать форму WaitForm вызвать Код: vbnet 1. 2. 3.
на vb6 работает на vba не пробовал (формы vb6 и vba немного отличаются) преимущества 1. прога будет ждать пока событие которое ждем не наступит и после вызова функции ожидания мы можем писать код который будет выполняться когда дождались иначе пришлось бы думать о том как вызвать код который должен выполниться после функции ожидания когда дождались 2. все окна будут заблокированы и пользователь не сможет ждать на кнопки если не хочется чтобы форма была видна достаточно показать ее в точке с отрицательными начальными координатами objWaitForm.left = -1000 objWaitForm.top = -1000 while true DoEvents использовать просто нельзя тк 100% работы на процессор и кроме того события от WebBrowser просто не приходят или приходят но не все или не тогда когда надо использовать winapi функцию ожидания нельзя по-крайней мере у меня не получилось ... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2012, 19:16 |
|
ничего не делать
|
|||
---|---|---|---|
#18+
ждать в vb6, А что это у тебя за класс такой WaitForm в VB6? Поделился бы. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2012, 19:31 |
|
ничего не делать
|
|||
---|---|---|---|
#18+
ждать в vb6, спс, но как-то сложновато для мну) я использовал обычный таймер, который через заданный промежуток времени проверяет, созданы ли все условия для продолжения работы. кстати, почему ты до сих пор не зарегистрировался? твои знания будут большим вкладом в развитии программирования на форуме, и тебе помогут если что ... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2012, 21:42 |
|
ничего не делать
|
|||
---|---|---|---|
#18+
ждать в vb6... while true DoEvents использовать просто нельзя тк 100% работы на процессор ... Снова не понял, а что ты хочешь, чтобы половина работы была на вентилятор??? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2012, 02:26 |
|
ничего не делать
|
|||
---|---|---|---|
#18+
если написать Do While True Loop то проц занят на 100% что плохо нам надо что проц был занят на 0% в ожидании авторА что это у тебя за класс такой WaitForm в VB6? Поделился бы. WaitForm это просто форма если она будет видна когда ожидание происходит то можно на нее помесить сообщение "Ожидание" например или еще какие-то контролы например "Прервать Ожидание" и тд если написать objWaitForm.Show vbModal то прога будет ждать пока форма не будет закрыта те получили функцию ожидания что чтобы программно выйти из ожидания надо просто закрыть форму WaitForm например вызвав objWaitForm.Hide проверить что условие по которому надо завершить ожидание выполнено можно либо по таймеру те через определенный промежуток проверять условие либо по событию например IE.NavigateComplete ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2012, 13:37 |
|
|
start [/forum/topic.php?fid=60&msg=37825361&tid=2157719]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
37ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
others: | 16ms |
total: | 141ms |
0 / 0 |