Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.10;
Скачать: CL | DM;

Вниз

Автоматизация загрузки   Найти похожие ветки 

 
Igel ©   (2002-09-27 14:18) [0]

Проблема такая: Необходимо контролировать процесс загрузки приложения. Есть такой пример:

begin
Application.Initialize;
with TForm5.Create(nil) do
try
ProgressBar1.Max := 100;
Show; // show a splash screen contain ProgressBar control
Update; // force display of Form5
Application.CreateForm(TForm1, Form1);
ProgressBar1.StepBy(25);
Application.CreateForm(TForm2, Form2);
ProgressBar1.StepBy(25);
Application.CreateForm(TForm3, Form3);
ProgressBar1.StepBy(25);
Application.CreateForm(TForm4, Form4);

ProgressBar1.StepBy(25);
finally
Free;
end;
Application.Run;
end.


Так вот, это не совсем приемлимо, тем более если у меня 100 форм. Хотелось бы нечто вроде:

begin

Application.Initialize;
with TForm5.Create(nil) do
try
ProgressBar1.Max := length(MyArray);
Show; // show a splash screen contain ProgressBar control
Update; // force display of Form5
for i:=1 to length(myarray) do
begin
Application.CreateForm(MyArray[i].Class, Myarray[i].Name);
ProgressBar1.StepIt;
end;
finally
Free;
end;
Application.Run;
end.

Только вот не могу/не знаю, как такой массив создать... Чевой-то не получается... Подскажите..


 
Igel ©   (2002-09-28 06:36) [1]

Ну что? Никаких идей?
Обидно...


 
Mike_Goblin ©   (2002-09-28 10:36) [2]

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


 
TTCustomDelphiMaster ©   (2002-09-28 11:00) [3]


> как такой массив создать


Никак. И лучше не пробовать, потому что:
1. Для реализации подобных вещей необходимо знать саму Delphi не хуже ее разработчиков.
2. Потребуются глубокие изменения исходников которые:
a) не будут поддерживаться в новых версиях;
б) возможно вообще не удастся реализовать.
3. Время затраченное на попытку реализации несоизмеримо больше, чем написание простого кода даже для 1000 форм.

Совет: Сделайте приложение, которое автоматически модернизирует *.dpr для вывода ProgressBar процесса загрузки.


 
Igel ©   (2002-09-28 11:40) [4]

Н-да. Попробовал вручную сделать.
Дельфа не компилирует, какая-то проверка... Жаль..



Страницы: 1 вся ветка

Текущий архив: 2002.10.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
1-31711
Vasechkin
2002-10-01 07:41
2002.10.10
Конфигуратор для exe


1-31704
Romikadze
2002-09-30 18:53
2002.10.10
Полупрозрачная форма


1-31812
kamonavt
2002-10-01 21:00
2002.10.10
mdi-форма -> dll


1-31757
Дмитрий К.К.
2002-09-30 23:43
2002.10.10
Creation Order


14-32002
EAlexander
2002-09-17 10:21
2002.10.10
Нужен ExpressSpreadSheet :))