Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #6  
Старый 09.05.2024, 21:07
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,035
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Цитата:
Ваш пример хорош тем что принудительно происходит репейт и окно обновляется сам и положение прогрессбара меняется - но минус этого метода в том что ты замедляешь загрузку процедурой sleep которую я стараюсь даже в микроконтроллерах избегать. Эта процедуру создали чтобы когда нужно можно было движение планеты остановить .

Пока как временное решение задачи я решил использовать статичную картинку как экран загрузки чтобы клиент понял программа запускается. Но то что оно зависает как то напрягает.

Да sleep там просто для того, что бы обновление не происходило моментально, в то не успеешь увидеть изменение прогресс бара. Это же просто пример. На самом деле там вместо sleep должен быть твой код инициализации/загрузки ресурсов. Тут просто демонстрация как создавать splach screen, как его обновлять, и как уничтожать по окончанию. С точки зрения обновления, пусть тебе надо загрузить 5 справочников. У тебя есть 5 процедур загрузки. Ты их перечисляешь в массиве и код работает. Когда появится 6ой справочник, то просто добавляешь процедуру его загрузки в массив, а код остается все тем же. Как я и написал, в примере весть код помещен в файл проекта просто для нагдядности, по идее и массив, и сами процедуры инициализации должны быть в отдельных модулях.

Да, и еще один момент. Все эти действия инициализации происходят до старта процедуры обработки сообщений, так что все равно будет впечатление, что программа зависла. Поэтому там и ручной старт отрисовки при изменеии прогресс бара и поэтому "вешается" курсор ожидания.

Последний раз редактировалось lmikle, 09.05.2024 в 21:10.
Ответить с цитированием
Этот пользователь сказал Спасибо lmikle за это полезное сообщение:
Electronic_Arts (09.05.2024)
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 21:02.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter