Главная страница
    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.033 c
6-1089188010
Maks_G
2004-07-07 12:13
2004.09.12
Проблемы с IdHTTPServer и POST


14-1093462970
YurikGL
2004-08-25 23:42
2004.09.12
Совет по железу


3-1092826456
Valera
2004-08-18 14:54
2004.09.12
Вопрос по DBGrid


1-1093035441
ИМХО
2004-08-21 00:57
2004.09.12
The specified module could not be found.


1-1093509975
serg128
2004-08-26 12:46
2004.09.12
Вопрос по свойству WindowMenu





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