Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.10.10;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.008 c
14-31958
Vovik
2002-09-13 11:50
2002.10.10
Delphi 7


3-31607
****
2002-09-18 12:42
2002.10.10
Ошибка


4-32099
Azbul
2002-08-23 08:06
2002.10.10
Помогите с отключением клавы и мыши


1-31685
Cobalt
2002-09-27 18:55
2002.10.10
Как выйти из оператора case?


1-31871
sagchat
2002-09-29 15:53
2002.10.10
Случайный текст.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский