Здравствуйте, гость ( Вход | Регистрация )
kuler | Дата 27.10.2008, 10:42 |
"длинные" методы вызываются в отдельном потоке в курсе, но это геморройно |
|
sploid | Дата 24.10.2008, 21:23 |
kuler что бы гуйня не тормозила, "длинные" методы вызываются в отдельном потоке. | |
kuler | Дата 24.10.2008, 16:33 |
там нет цикла, а есть вызов одного метода который тормозит посути одно и тоже, длительный процесс.Я на эту грблю не разу не наступал, т.к. прочитал про нее в книжке немногим раньше, чем начал маломальски сложные программы на Дельфи-3 писать, а книжка была очень хорошая, правда забыл как называлась, помню, что про Дельфи-2 имхо, правильней сказать что не сталкивались, ибо этот метод не мной написан, а вызывать нада, да и не должно быть в нормальном методе всякого лишнего мусора типа updatecomponent (во всяком случае в случае если неизвестно сколько будет длиться процесс) |
|
Litkevich Yuriy | Дата 24.10.2008, 15:59 |
там нет цикла, а есть вызов одного метода который тормозит посути одно и тоже, длительный процесс.Я на эту грблю не разу не наступал, т.к. прочитал про нее в книжке немногим раньше, чем начал маломальски сложные программы на Дельфи-3 писать, а книжка была очень хорошая, правда забыл как называлась, помню, что про Дельфи-2 |
|
kuler | Дата 24.10.2008, 15:43 |
sploid, как это не обрабатываю? обработчик таймера есть и он начинает срабатывать сразу после тормоза Litkevich Yuriy, там нет цикла, а есть вызов одного метода который тормозит вообще то да, в билдере тоже не срабатывает пока не завершится тормоз
|
|
Litkevich Yuriy | Дата 24.10.2008, 15:32 |
kuler, обработка GUI событий происходит в главном потоке. Из псевдо кода не понятно как ты собирался управлять индикатором выполнения. в длительных циклах всегда надо вставлять такие вещи как показал sploid |
|
sploid | Дата 24.10.2008, 15:11 |
в цикле обработки данных вызывай: void QCoreApplication::processEvents ( QEventLoop::ProcessEventsFlags flags, int maxtime ) [static] а то что нет таймера так и должно быть, ты же не обрабатываешь сообщения. |
|
kuler | Дата 24.10.2008, 14:05 |
а то сделал окно с прогресс баром, чтобы когда чтото грузится его показывать, а там прогресс бар не обновляется пока все не прогрузится, а затем уже начинает обновляться примерный код new qwidget show dataprocess delete widget врубил в виджете таймер, а он тоже не срабатывает (вот это вообще нонсенс) |
|
Просмотр темы полностью (откроется в новом окне) | |
![]() |
Текстовая версия | Сейчас: 4.12.2023, 19:14 |