Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.12;
Скачать: 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 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.044 c
1-1093506999
SPy
2004-08-26 11:56
2004.09.12
TShellListView - стандартное popupmenu


1-1093597779
Goorus
2004-08-27 13:09
2004.09.12
Add to AutoRun


4-1090617944
кактусбел
2004-07-24 01:25
2004.09.12
Сканирование памяти


1-1093405354
COOLer
2004-08-25 07:42
2004.09.12
DataSet to XML


4-1090400072
Le!
2004-07-21 12:54
2004.09.12
USB!