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

Вниз

Вопрос по созданию и загрузке форм !   Найти похожие ветки 

 
Senti   (2004-02-25 20:48) [0]

Хотелось бы сделать вот таким образом....

В проекте 8 форм.
Когда идет их загрузка погазывается первая форма и она тормозит пока не загрузятся все остальные.
Хотелось бы сделать так, чтобы пока не загрузились все остальные формы, форма 1 не показывалась, а вместо нее показывался так называемое Splash окно...


 
jack128   (2004-02-25 20:53) [1]

открываешь файл проэкта (Project|View Source) и удаляешь строки
Application.CreateForm(TForm2, Form2);
Application.CreateForm(TForm3, Form3);
и ежи с ними

На счет > Splash окно... , вроде даже демка была и все в пустую.. ;-((


 
Defunct   (2004-02-26 00:36) [2]

jack128 © (25.02.04 20:53) [1]
нет ничего удалять не надо. Просто поменять порядок:
Appliction.CreateForm(TSplashOkno, SplashOkno);
Application.CreateForm(TForm2, Form2);
Application.CreateForm(TForm3, Form3);
..
ну и последней:
Application.CreateForm(MainForm, TMainForm);

А у форм поставить атрибут Visible:=false и зажигать после содания главной формы, тогда же и гасить сплэш окно


 
Гаврила   (2004-02-26 00:43) [3]

>>Defunct © (26.02.04 00:36) [2]
В таком случае главной формой окажется TSplashOkno.
Потому что главная форма - это та, которая создна первой с парметром Owner = Application.

Если уж возникла необходимость создавать сразу все формы, а не прислушаться к совету номер 1, то нужно сделать так
в файле проекта
Application.Initialize;
SplashOkno:=TSplashOkno.Create(nil);
SplashOkno.Show;
SplashOkno.Refresh;
далее создание всех остальных форм
SplashOkno.Release;
Application.run;

и проверь, всех форм visible должно стоять в положении False


 
Германн   (2004-02-26 00:59) [4]

Не понятен сам исходный вопрос. Что значит " В проекте 8 форм.
Когда идет их загрузка погазывается первая форма и она тормозит пока не загрузятся все остальные.
"

Ведь все CreateForm в стандартном проекте происходят до показа всех форм, в т.ч. и главной.

А понятие "загрузка формы" вообще непонятно что значит. :((


 
Defunct   (2004-02-26 02:49) [5]

> Гаврила (26.02.04 00:43) [3]

Если это не MDI приложние, то нет разницы какая из форм будет оффициально главной формой (хоть невидимая, хоть splash окно), главное кого мы сами считаем главной (в визуальном плане).


 
KSergey   (2004-02-26 05:35) [6]

> Defunct © (26.02.04 02:49) [5]
> Если это не MDI приложние, то нет разницы какая из форм
> будет оффициально главной формой (хоть невидимая, хоть
> splash окно), главное кого мы сами считаем главной (в визуальном > плане).

Нифига! При закрытии главной формы закроется и все приложение.


 
Alex Konshin   (2004-02-26 06:50) [7]

Одного не могу понять, зачем люди создают все формы сразу?


 
KSergey   (2004-02-26 07:31) [8]

1.Либо они не знают, что можно иначе
2.Либо в приложении всего одна форма ;)


 
TUser   (2004-02-26 07:38) [9]

Лучше убрать все Application.CreateForm, а при показе каждой формы писать
if not Assigned(Form125) then
Application.CreateForm(...);
А если ты посто хочешь заставку вывести на время загрузки всех этих форм, тогда - выводи ее, потом делай CreateForm для остальных форм, потом убираем Splash и показываем основную форму приложения. Вот так.


 
Anatoly Podgoretsky   (2004-02-26 08:57) [10]

Alex Konshin © (26.02.04 06:50) [7]
Чтобы потом не создавать :-)
Сделал дело гуляй смело, а то что долго и глючно, это второстепенное.


 
Defunct   (2004-02-26 17:59) [11]

KSergey © (26.02.04 05:35) [6]
> Нифига! При закрытии главной формы закроется и все приложение.

Это уже мелочи жизни, наоборот приятней когда в многоформенном SDI приложении главная форма будет невидимой, чтобы не убить случайно все приложение.



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

Форум: "Основная";
Текущий архив: 2004.03.09;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.008 c
1-25762
Zyb
2004-02-27 08:46
2004.03.09
Антивирусник


4-25974
Gnom
2004-01-03 17:20
2004.03.09
как узнать hwnd свое проги(когда ее запускаеш) ?


1-25775
YuRock
2004-02-26 14:04
2004.03.09
Array Of Variant - Read of address 00000000


9-25678
Unknown user
2003-08-21 15:42
2004.03.09
Определение попадающих в область видимости объектов в OpenGL.


1-25737
ghg
2004-02-26 22:49
2004.03.09
Axis.Labels в TChart





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