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

Вниз

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

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

Наверх





Память: 0.46 MB
Время: 0.031 c
3-1092809583
Uran
2004-08-18 10:13
2004.09.12
Как лучше защитить базу данных?


6-1089053117
leonidus
2004-07-05 22:45
2004.09.12
TidHTTP при работе в потоке


8-1087795508
ИМХО
2004-06-21 09:25
2004.09.12
Создать Flash-файл средствами Delphi


14-1093510651
WondeRu
2004-08-26 12:57
2004.09.12
Диаграмма рождаемости города N


14-1093265478
Kerk
2004-08-23 16:51
2004.09.12
Жизнь прекрасна!





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский