Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.11.2006, 11:49   #1
Freedom
Пользователь
 
Регистрация: 02.11.2006
Сообщений: 22
По умолчанию ProgressBar в заставке приложения

Как вывести в ProgressBar процесс компиляции в окне заставки
приложения? (если поняли о чем идет речь)
Freedom вне форума Ответить с цитированием
Старый 09.11.2006, 14:08   #2
zetrix
Delphi/C++/C#
Участник клуба
 
Аватар для zetrix
 
Регистрация: 29.10.2006
Сообщений: 1,972
По умолчанию

Хм... сам чё-то не допёр... Процесс компиляции? Это как? Твоя программа при заставке что-то компилирует? Круто!

Последний раз редактировалось zetrix; 10.11.2006 в 14:51.
zetrix вне форума Ответить с цитированием
Старый 09.11.2006, 20:14   #3
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

показывай это окно и обновляй прогрессбар
а в чём собственно проблема????
rpy3uH вне форума Ответить с цитированием
Старый 10.11.2006, 07:35   #4
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
По умолчанию

Application.ProcessMessages
нужно выполнять периодически, либо случайно вместе с изменением прогресса (если у вас непрерывный процесс идет :^).
Берегите друг друга!
Virtson вне форума Ответить с цитированием
Старый 10.11.2006, 10:30   #5
SuperVisor
Павел Сергеевич
Форумчанин
 
Регистрация: 05.11.2006
Сообщений: 665
По умолчанию

Цитата:
Сообщение от Freedom Посмотреть сообщение
Как вывести в ProgressBar процесс компиляции в окне заставки приложения?
А ты уверен, что это вообще возможно (Видел где-то)?
Познавая других, мы познаем себя.
С'est la vie...
SuperVisor вне форума Ответить с цитированием
Старый 11.11.2006, 09:30   #6
Freedom
Пользователь
 
Регистрация: 02.11.2006
Сообщений: 22
По умолчанию

Похоже слово "компилирует" ввело вас в некоторое заблуждение... Под словом компилируется в данном случае я имел ввиду запуск приложения. Объясню на примере: Допустим при загрузке Word, появляется окно-заставка. Так вот у моей программы есть такая же заставка, и туда необходимо засунуть ProgressBar, который показывает сколько "через какое время откроется главное окно программы". Делать это через Timer нецелесообразно.

Надеюсь внес хоть какую то внятность...
Freedom вне форума Ответить с цитированием
Старый 11.11.2006, 10:18   #7
SuperVisor
Павел Сергеевич
Форумчанин
 
Регистрация: 05.11.2006
Сообщений: 665
По умолчанию

Цитата:
Сообщение от Freedom Посмотреть сообщение
Надеюсь внес хоть какую то внятность...
Да, теперь все стало на порядок понятнее. Для начала тебе следовало бы разделить весь процесс на стадии: Загрузка 1-й dll, загрузка компонента, загрузка картинки и т.д. Чем больше делений - тем лучше. И после каждого деления обновляешь прогрес бар. Если программа с самого начала открывает файл и что-то с ним делает, то это - вообще наилучший вариант. Допустим я в одной програмке делал компонент TThread, который загружал инфу из файла и одновременно обновлял процесс загрузки относительно размера файла.
Познавая других, мы познаем себя.
С'est la vie...
SuperVisor вне форума Ответить с цитированием
Старый 11.11.2006, 11:01   #8
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
Сообщение

2 Freedom

ну Word при загрузке может че-то (напр, выделение памяти) делает.

твоя же программа может загружаться моментально..
не хочешь Timer? делай sleep()

но не цикл же для сцециальной загрузки процессора
Берегите друг друга!

Последний раз редактировалось Virtson; 11.11.2006 в 11:04. Причина: не обновил ..
Virtson вне форума Ответить с цитированием
Старый 03.11.2007, 07:41   #9
KORN
Банхаммер
Участник клуба
 
Аватар для KORN
 
Регистрация: 17.02.2007
Сообщений: 1,754
По умолчанию

а может просто вокни прогресбар задай значение от 0 до 50 и когда доходит до определенного участка кода когда программа что то загружает то просто добавляй к примеру по 10 к позиции прогрессбара и еще можно добавить label в которую при загрузке чего либо будет выдаваться то что делается в данный момент... к примеру
Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
  label1.Caption:='Загрузка в memo1';
  memo1.Lines.LoadFromFile('c:\1.txt');
  progressbar1.Position:=progressbar1.Position+10;

  label1.Caption:='Загрузка в memo2';
  memo1.Lines.LoadFromFile('c:\2.txt');
  progressbar1.Position:=progressbar1.Position+10;

  label1.Caption:='Загрузка в listbox1';
  listbox1.Items.LoadFromFile('c:\3.txt');
  progressbar1.Position:=progressbar1.Position+10;

  label1.Caption:='Загрузка завершена';
end;
Перед тем как спросить ищи на форуме и в GOOGLE
KORN вне форума Ответить с цитированием
Старый 03.11.2007, 07:41   #10
KORN
Банхаммер
Участник клуба
 
Аватар для KORN
 
Регистрация: 17.02.2007
Сообщений: 1,754
По умолчанию

а может просто вокни прогресбар задай значение от 0 до 50 и когда доходит до определенного участка кода когда программа что то загружает то просто добавляй к примеру по 10 к позиции прогрессбара и еще можно добавить label в которую при загрузке чего либо будет выдаваться то что делается в данный момент... к примеру
Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
  label1.Caption:='Загрузка в memo1';
  memo1.Lines.LoadFromFile('c:\1.txt');
  progressbar1.Position:=progressbar1.Position+10;

  label1.Caption:='Загрузка в memo2';
  memo1.Lines.LoadFromFile('c:\2.txt');
  progressbar1.Position:=progressbar1.Position+10;

  label1.Caption:='Загрузка в listbox1';
  listbox1.Items.LoadFromFile('c:\3.txt');
  progressbar1.Position:=progressbar1.Position+10;

  label1.Caption:='Загрузка завершена';
end;
Перед тем как спросить ищи на форуме и в GOOGLE
KORN вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ProgressBar Makarov Компоненты Delphi 3 04.02.2008 22:42
ProgressBar Rahim1993 Общие вопросы Delphi 10 20.01.2008 21:28
ProgressBar Terran Общие вопросы Delphi 5 09.01.2008 21:18
Делаю сайты, пишу маленькие/большие скрипты. Пишу веб-приложения и приложения под Windows. SkyM@n Фриланс 3 29.12.2007 16:21
ProgressBar pentiumForever Компоненты Delphi 2 07.09.2007 13:33