Вниз
Скачать: CL | DM;

Загрузочная форма   Найти похожие ветки 

 
Stype ©   (2004-08-27 10:28) [0]

Как сделать, чтобы во время загрузки программы появлялась форма,
а после затрузки она исчезала(например как при загркзке Delphi)


 
Ega23 ©   (2004-08-27 10:50) [1]

Поищи в FAQ про splash-формы


 
Yr2   (2004-08-27 11:03) [2]


program Project1;

uses ...

{$R *.res}

begin
 Application.Initialize;

 Application.CreateForm(TForm1, Form1); // это главная форма

 Application.CreateForm(TFormLoader, FormLoader); // это форма - "окно загрузки"

 FormLoader.Show;

 Application.CreateForm(TForm2, Form2);
 Application.ProcessMessages;

 Application.CreateForm(TForm3, Form3);
 Application.ProcessMessages;

 Application.CreateForm(TForm4, Form4);
 Application.ProcessMessages;

 ...
 ...
 ...

 Application.CreateForm(TFormN, FormN);
 Application.ProcessMessages;

 FormLoader.Free;  // убиваем загрузочную форму (она уже не нужна)

 Application.Run;
end.


кстати, на загрузочной форме можно еще организовать пиковый индикатор загрузки приложения, если N=много


 
Erik1   (2004-08-27 11:40) [3]

Я сделал так, это меньше ресурсов теребует, но недолжно быть элементов получающих фокус.
 Application.Initialize;

 SplashForm := TSplashForm.Create(nil);
 SplashForm.Refresh;

 Application.Title := "Starvara";
 Application.CreateForm(TLookup, Lookup);
 Application.CreateForm(TMainDM, MainDM);
 Application.CreateForm(TMainForm, MainForm);
 MainForm.Show;

 SplashForm.Free;
 SplashForm := nil;

 MainForm.Login;
 Application.Run;


 
Amoeba ©   (2004-08-27 14:53) [4]

Пример найдешь в демо-приложении MastApp (входит в поставку Delphi)


 
SPy ©   (2004-08-27 17:52) [5]

Я всегда так делаю:


{$R *.res}

begin
 Application.Initialize;
 fmSplash:=TfmSplash.Create(Application);
 fmSplash.Show; fmSplash.Update;
 Application.Title := "Title";
 Application.CreateForm(TForm1, Form1);
 Application.CreateForm(TForm2, Form2);
 Application.CreateForm(TForm3, Form3);
 Application.CreateForm(TfMkDir, fMkDir);
 fmSplash.Hide; fmSplash.Free;
 Application.Run;
end.


Настройки fmSplash:
FormStyle = fmStayOnTop
BorderStyle = bsNone
Position = poScreenCenter
BorderIcons = []

Удачи!
У тебя уже есть 3 примера ;)


 
GrayFace ©   (2004-08-27 18:03) [6]

> fmSplash.Hide; fmSplash.Free;

Лучше Close; Free;


 
Stype ©   (2004-08-28 08:23) [7]

Всем большое спасибо! Всё работает!



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.02 c
3-1092390543
strelok-47
2004-08-13 13:49
2004.09.12
два вопроса по EhLib у и ADO компонентам


10-1021529464
Олег Лаукарт
2002-05-16 10:11
2004.09.12
Многопотоковый корба-клиент (Visibroker)


1-1093386476
3APA3A
2004-08-25 02:27
2004.09.12
2 дополнительных потока при использовании TActionManager


10-1036136259
kostik78ua
2002-11-01 10:37
2004.09.12
Коннекты остаются :(


14-1093290098
Mihey_temporary
2004-08-23 23:41
2004.09.12
Код клавиши




   Наверх