Вопрос: Слишком быстро работает | Добавлено: 20.01.10 18:32 |
Автор вопроса: ![]() |
У меня необычная ситуация: ProgressBar не успевает за кодом! Код уже выполнился, а ползунок еще до конца не дополз (Value уже равно Maximum)...
Есть ли способ заставить форму подождать ProgressBar? |
Ответы | Всего ответов: 17 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 21 Ответов: 41 |
Профиль | Цитата | #1 | Добавлено: 20.01.10 18:35 |
забыл: ОС Vista и VB2008 |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 246 Ответов: 3333 |
Web-сайт: Профиль | Цитата | #2 | Добавлено: 20.01.10 19:53 |
Поставь после выполнения кода
|
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 21 Ответов: 41 |
Профиль | Цитата | #3 | Добавлено: 20.01.10 23:10 |
ProgressBar застывает где-то на середине...
причем, если в конце вставить MsgBox, то можно увидеть, как ProgressBar доходит до конца уже после появления сообщения на экране... Такой эффект только на Висте, на ХР доходит до конца... |
Номер ответа: 4 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 246 Ответов: 3333 |
Web-сайт: Профиль | Цитата | #4 | Добавлено: 21.01.10 09:42 |
Покажи алгоритм, который твой прогресс бар носилует. |
Номер ответа: 5 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 21 Ответов: 41 |
Профиль | Цитата | #5 | Добавлено: 22.01.10 14:17 |
Смысл вот такой:
|
Номер ответа: 6 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 21 Ответов: 41 |
Профиль | Цитата | #6 | Добавлено: 22.01.10 14:19 |
Блин, не могу изменить!
Строчку 8 следует понимать так:
В свойствах самого ProgressBar значение Step равно 1. |
Номер ответа: 7 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 246 Ответов: 3333 |
Web-сайт: Профиль | Цитата | #7 | Добавлено: 22.01.10 14:27 |
? |
Номер ответа: 8 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 21 Ответов: 41 |
Профиль | Цитата | #8 | Добавлено: 23.01.10 11:21 |
Неа - просто программа зависает на указанное время, причем прогресс бар тоже не двигается! Это беда только Висты! Если в свойствах проекта выключить интерфейс ХР, то прогресс бар не хулиганичает. |
Номер ответа: 9 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Вопросов: 130 Ответов: 6602 |
Профиль | Цитата | #9 | Добавлено: 25.01.10 06:47 |
Дело в том что прогрес-бар в висте изменяет значение не моментально, а постепенно, с анимацией. У тебя эта анимация не успевает выполниться до того как завершится код.
Как с этим бороться, мне бы было тоже интересно взглянуть. |
Номер ответа: 10 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 21 Ответов: 41 |
Профиль | Цитата | #10 | Добавлено: 25.01.10 15:48 |
Именно!
Было бы логично добавить функцию ожидания завершения анимации ПрогрессБара... |
Номер ответа: 11 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: adamis@list.ru Вопросов: 153 Ответов: 3632 |
Профиль | Цитата | #11 | Добавлено: 25.01.10 23:06 |
Или функцию ожидания прозрения ![]() |
Номер ответа: 12 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 24 Ответов: 363 |
Профиль | Цитата | #12 | Добавлено: 26.01.10 23:24 |
Smith
Не скажи... w7(7600 сборка)+vs2010 та же фигня с прогрессом, уже как то смирился, с тем что он иногда не успевает, не самое смертельное что бывает в жизни ![]() так что ненада на висту незаслуженно гнать, хоть она и в самом деле жуткое гав.. |
Номер ответа: 13 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: adamis@list.ru Вопросов: 153 Ответов: 3632 |
Профиль | Цитата | #13 | Добавлено: 27.01.10 14:00 |
Самже говоришь виста жуткое г., или ты тоже незаслуженно гонишь?
В семерке тоже прогресс анимированный, у меня он хоть и очень быстро, но проходит от начала и до конца. Надож понимать, что такая красота сделана только для красоты, а не как эталон точности. |
Номер ответа: 14 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Вопросов: 130 Ответов: 6602 |
Профиль | Цитата | #14 | Добавлено: 27.01.10 15:45 |
В Windows 7 прогресс бар имеет тот же недостаток что и в Vista, это и пытаются тебе объяснить |
Номер ответа: 15 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 58 Ответов: 4255 ![]() |
Профиль | Цитата | #15 | Добавлено: 27.01.10 16:18 |
Тут все просто... наверняка отрисовка происходит в ассинхронном режиме .. отсюда и запаздывание..
Если это настолько критично то написать подобный контрол - 20-30 минут времени.. Если уж очень хочется чтоб все было синхронно, то я думаю можно потратить пол часика лишних .. |
|