Модераторы: Snowy, MetalFan, bems, Poseidon

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как правильно реализовать окно "Ждите.. (Гот.X%)" 
:(
    Опции темы
northener
Дата 28.5.2012, 01:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(gesper @  28.5.2012,  01:27 Найти цитируемый пост)
И еще, я видел, не помню в какой функции из инета скопированной, но точно видел, что такой трюк с переменной выполняли без применения Таймера. Вот его я и хотел вобще то тут добится

Вот именно это я и назвал "волшебной палочкой". Которую очень хочется получить, но которая существует только в сказках.
Можно проделать массу "трюков с переменной", но ни один из них не отменит наличия где-либо строки 
Код

ProgressBar1.Position:=...




--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Чучмек
Дата 28.5.2012, 09:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НЭТ БИЛЭТ
**


Профиль
Группа: Участник
Сообщений: 841
Регистрация: 11.5.2008
Где: СССР

Репутация: 7
Всего: 41



Цитата(northener @  28.5.2012,  01:36 Найти цитируемый пост)
Можно проделать массу "трюков с переменной", но ни один из них не отменит наличия где-либо строки 

Отменит - SendMessage
Код

const
  PBM_SETPOS                  = WM_USER+2;
  PBM_SETRANGE32          = WM_USER+6;
begin
SendMessage(ProgressBar1.Handle, PBM_SETRANGE32, 0, 200);
SendMessage(ProgressBar1.Handle, PBM_SETPOS, 50, 0)


Цитата(gesper @  28.5.2012,  01:27 Найти цитируемый пост)
Кроме того, таймер постоянно проверяющий состояние переменной будет доплонительной нагрузкой, а нафига, если можно обновлять и проверять состояние именно тогда, когда надо.

Это зависит от того, что творится в твоей процедуре.
Если по типу  0% - прдключение - 20% - запрс - 40% - получение данных - 60% - обработка - 80% - разрыв соединения - 100% - то да,конечно.
А если выполняется долгий цикл - то таймер с интервалом 100-300мс даст загрузку ЦП -0% , а вот обновление ProgressBar1.Position в цикле будет занимать до 99% процессорного времени.

Цитата(northener @  28.5.2012,  00:54 Найти цитируемый пост)
Вот тут поспорю со столь декларативным утверждением должно быть.  Почему именно должно?

Да, согласен, совсем не обязательно.

Цитата(Чучмек @  28.5.2012,  09:26 Найти цитируемый пост)
Цитата(northener @  28.5.2012,  01:36 Найти цитируемый пост)
Можно проделать массу "трюков с переменной", но ни один из них не отменит наличия где-либо строки 

Отменит - SendMessage

...причем тут?, очем это я?  smile  это уже будет не "трюк с переменной"

Это сообщение отредактировал(а) Чучмек - 28.5.2012, 11:01


--------------------
умную мысль держи при себе, а дурной - поделись с другими 
PM MAIL   Вверх
Dapo
Дата 29.5.2012, 07:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 417
Регистрация: 18.4.2002

Репутация: нет
Всего: 1



Цитата

Dapo
 Возможно тебе поможет (ла-ла-ла) регистрация собственного сообщения?


Цитата

gesper
Кроме того, таймер постоянно проверяющий состояние переменной будет доплонительной нагрузкой, а нафига, если можно обновлять и проверять состояние именно тогда, когда надо.


Цитата

Чучмек
Отменит - SendMessage


 smile  Вот это и был поток моих мыслей, только он дальше меня унес - в библиотеку. А иначе какой резон отучать функцию от формы?
Но есть и еще один способ: WaitFor... - хотя вот это уже перебор, отдельный поток для прогресса конечно не айс.

Так что, Чучмек, все верно, только отменит там где не хочется чтобы оно было  smile 

Это сообщение отредактировал(а) Dapo - 29.5.2012, 07:03
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1127 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.