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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Изменение прогресса в ProgressBar, Не получается настроить ProgressBar =( 
:(
    Опции темы
Fast
Дата 21.3.2006, 01:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Не получается настроить ProgressBar smile
Кусок кода программы
Код

program Project2;

uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1},
  Unit2 in 'Unit2.pas' {LogoForm};

{$R *.res}

begin
  Application.Initialize;
  With TLogoForm.Create(Application) do
  try
  Show;
  Update;
  Application.Title := 'Моя Программа.';
  Application.CreateForm(TForm1, Form1);
  Finally
  Free;
  end;
  Application.Run;
end.

На форме есть ProgressBar1.
Нужно что бы ProgressBAr отображал загрузку программы.
PM MAIL   Вверх
McDevil
Дата 21.3.2006, 01:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 8.12.2005
Где: Казахстан, Павлод ар

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



Вот выдержка из моего електронного учебника, который я писал где - то года 3 назад...
Разбирайся... smile

Код

program MaxBook;

uses
  Forms,
  UnMain in 'UnMain.pas' {FmMain},
  UnAbout in 'UnAbout.pas' {FmAbout},
  UnPlayer in 'UnPlayer.pas' {FmPlayer},
  UnSearch in 'UnSearch.pas' {FmSearch},
  UnTest in 'UnTest.pas' {FmTest},
  UnRegTest in 'UnRegTest.pas' {FmRegTest};

{$R *.res}

begin
  Application.Initialize;
  FmAbout:=TFmAbout.Create(Application);
  with FmAbout do begin
    Show;
    Update;
    GProg. ProgressBar1.:=0;
     Application.CreateForm(TFmMain, FmMain);
    GProg. ProgressBar1:=20;
     Application.CreateForm(TFmPlayer, FmPlayer);
    GProg. ProgressBar1:=40;
     Application.CreateForm(TFmSearch, FmSearch);
    GProg. ProgressBar1:=60;
     Application.CreateForm(TFmTest, FmTest);
    GProg. ProgressBar1:=80;
     Application.CreateForm(TFmRegTest, FmRegTest);
    GProg. ProgressBar1:=100;
    Hide;
    Free;
  end;
  Application.Run;
end.



--------------------
 мы знаем столько, сколько можем, а можем столько, сколь хотим... 

Тестируем программу: SPL-программа аналогов функций  
PM MAIL WWW ICQ   Вверх
Fast
Дата 21.3.2006, 06:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



smile Это немножко не то smile
У меня не столько юнитов!
У меня один юнит но он грузится где то 10 секунд smile
PM MAIL   Вверх
Snowy
Дата 21.3.2006, 09:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Цитата(Fast @ 21.3.2006, 01:28 Найти цитируемый пост)
Нужно что бы ProgressBAr отображал загрузку программы.
Для этого нужно знать, сколько она будет грузиться. А это неизвестно.

Цитата(Fast @ 21.3.2006, 01:28 Найти цитируемый пост)
Не получается настроить ProgressBar
Добавь на лого таймер. Двигай по таймеру.

Цитата(Fast @ 21.3.2006, 06:08 Найти цитируемый пост)
У меня один юнит но он грузится где то 10 секунд
Значит плохой юнит. Может лучше стоит переделать его так, чтобы грузился он за полсекунды?
PM MAIL   Вверх
McDevil
Дата 21.3.2006, 13:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 8.12.2005
Где: Казахстан, Павлод ар

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



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


--------------------
 мы знаем столько, сколько можем, а можем столько, сколь хотим... 

Тестируем программу: SPL-программа аналогов функций  
PM MAIL WWW ICQ   Вверх
Fast
Дата 22.3.2006, 00:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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





Цитата(Snowy @ 21.3.2006, 09:40 Найти цитируемый пост)
Добавь на лого таймер. Двигай по таймеру.

Плохо получится!
В случае использования таймера теряется смысл окна загрузки!

Цитата(Snowy @ 21.3.2006, 09:40 Найти цитируемый пост)
Значит плохой юнит. Может лучше стоит переделать его так, чтобы грузился он за полсекунды?

Юнит хороший =)
Просто в OnCreat идёт подключения к двум базам данных! Около 50000 записей так что за пол секунды не получится =(

Цитата(McDevil @ 21.3.2006, 13:31 Найти цитируемый пост)
Какая разница сколько юнитов переделай под себя...
Может тебе пример с таймером закинуть, если хочешь принудительно увеличить время загрузки твоей проги...
А вообще первый вариант показывает реальную степень загрузки...

С таймером я бы и сам мог сделать!(Уже делал smile для другой программы)
Но тут такая ситуация что с 50000 записей может увеличится до 100000 тогда таймер будет пробегать быстрее =(
PM MAIL   Вверх
Guedda
Дата 22.3.2006, 08:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


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

Репутация: 14
Всего: 78



Создай тред, и в треде подключайся к базам данных, и двигай прогресс. После того, как все баз подгрузятся, делай MainForm.Show.


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
Snowy
Дата 22.3.2006, 09:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Цитата(Fast @ 22.3.2006, 00:20 Найти цитируемый пост)
Юнит хороший =)Просто в OnCreat  идёт подключения к двум базам данных! Около 50000 записей
Нифига себе хороший юнит...
50000 записей при старте тянет...


Цитата(Fast @ 22.3.2006, 00:20 Найти цитируемый пост)
В случае использования таймера теряется смысл окна загрузки!
А как ты хочешь отображать, если у тебя время загрузки мерять нечем.
Ты ж не знаешь, сколько у тебя оно тянуться будет.
Просто покажи лого форму перед загрузкой и убери после без всяких баров.

А вообще подумай, ну зачем тебе тянуть 50000 записей?
Надеюсь, хоть не по сети...
PM MAIL   Вверх
Guedda
Дата 22.3.2006, 13:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


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

Репутация: 14
Всего: 78



Пользуйся запросами во время работы программы.


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
Samhein
Дата 22.3.2006, 13:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Башзэфашовец
**


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

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



Сделай просто заставку при загрузке, типа как в CorelDRAW 12.


--------------------
Знаю форум наизусть, но писать еще боюсь
PM   Вверх
Sunvas
Дата 24.3.2006, 08:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


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

Репутация: 28
Всего: 89



Цитата(Fast @ 22.3.2006, 00:20 Найти цитируемый пост)
Но тут такая ситуация что с 50000 записей может увеличится до 100000 тогда таймер будет пробегать быстрее =(

Тогда было-бы логично сделать "двиганье" прогресса именно в процедуре OnCreate => смотри сколько записей уже загружено и сколько осталось загрузить. Ведь сам ты не знаешь, сколько будет грузиться твой юнит? Точно так не знает и DPR файл, где ты пытаешься отобразить загрузку.
Если же сделать "двиганье" таймера в процедуре трудно, то можно попросту вывести на экран мильнекое окошко с бегающими точками (как при загрузке ХР - наверное они тоже не знали сколько будет грузиться их система smile ), и сказать, что приложение, мол грузиться.




--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
Fast
Дата 24.3.2006, 14:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(Sunvas @ 24.3.2006, 08:29 Найти цитируемый пост)
наверное они тоже не знали сколько будет грузиться их система smile ), и сказать, что приложение, мол грузиться.

Классно =)

Цитата(Sunvas @ 24.3.2006, 08:29 Найти цитируемый пост)
ожно попросту вывести на экран мильнекое окошко с бегающими точками

А как эти точки вывести ??????

M
Girder
Поиск... http://forum.vingrad.ru/index.php?act=Search&f=2
PS: p0s0l приводил код...

Если не сложно пример кода smile
smile smile smile
PM MAIL   Вверх
Alexeis
Дата 24.3.2006, 15:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



проще всего нарисовать 20 кадров и крутить их по циклу или воспользоваться TAnimate.
Добавлено @ 15:14
Кадры можно загружать в TImageList и по таймеру рисовать по очереди.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Sunvas
Дата 25.3.2006, 08:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


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

Репутация: 28
Всего: 89



Цитата(Fast @ 24.3.2006, 14:31 Найти цитируемый пост)
А как эти точки вывести ??????

Вот у меня был один компонентик для борьбы с этими проблемами. Лови!

Присоединённый файл ( Кол-во скачиваний: 10 )
Присоединённый файл  BusyDetect.zip 26,26 Kb


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

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

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

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

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


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

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


 




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


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

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