Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Заставка, Не получается 
V
    Опции темы
DimassS
Дата 22.5.2006, 08:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 90
Регистрация: 12.4.2006
Где: Россия, Иркустк

Репутация: 1
Всего: 2



Вопрос помоуму уже задавался, и в DRKB про это есть, делаю вроде всё правильно, а не получается smile 
Создаю новую форму, в Options закидываю её в Available forms, кидаю на неё таймер, задаю ему Enabled=true, interval=5000
в Project пишу:

Код

program Project1;

uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1},
  QStrings in 'QSTRINGS.PAS',
  Unit2 in 'Unit2.pas' {Form2},
  Unit3 in 'Unit3.pas' {Form3},
  Unit4 in 'Unit4.pas' {Form4},
  Unit5 in 'Unit5.pas' {Form5},
  Unit6 in 'Unit6.pas' {Put};

{$R *.res}

begin
  Application.Initialize;
  Form5 := TForm5.Create(Application);
  Form5.Show;
  Form5.Update; 
  while Form5.Timer1.Enabled do
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.CreateForm(TForm2, Form2);
  Application.CreateForm(TForm3, Form3);
  Application.CreateForm(TForm4, Form4);
  Application.CreateForm(TPut, Put);
  Form5.Hide;
  Form5.Free; 
  Application.Run;


тормозит на цикле While, может таймер не пашет??? smile  
Выручайте - заранее благодарю!!! 
PM MAIL ICQ   Вверх
Albinos_x
Дата 22.5.2006, 08:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 26
Всего: 108



убери эти строки вообще....
1. непонятно зачем этот цикл вообще?
2. думаю множественная инициализация приложения ни к чему хорошему не приведёт (Application.Initialize;) 


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
drkot
Дата 22.5.2006, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


Профиль
Группа: Завсегдатай
Сообщений: 1042
Регистрация: 5.5.2006

Репутация: 5
Всего: 8



Цитата(DimassS @  22.5.2006,  08:13 Найти цитируемый пост)
Создаю новую форму, в Options закидываю её в Available forms, кидаю на неё таймер, задаю ему Enabled=true, interval=5000

таймер начинает работать только после
 
Код
Application.Run;
 

используй задержки между созданием форм
Код
sleep(ms)
 

Это сообщение отредактировал(а) drkot - 22.5.2006, 13:05


--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
killerbean
Дата 22.5.2006, 16:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 104
Регистрация: 18.5.2006

Репутация: нет
Всего: нет



попробуй так:
Код

program Project1;

uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1},
  Unit2 in 'Unit2.pas' {Form2};

{$R *.RES}

begin
  Application.Initialize;
  Form2 := TForm2.Create(Application);
  Form2.Show;
  Form2.Update;
  while Form2.Timer1.Enabled do
    Application.ProcessMessages;
  Application.CreateForm(TForm1, Form1);
  Form2.Hide;
  Form2.Free;
  Application.Run;
end.
 
PM MAIL   Вверх
Albinos_x
Дата 22.5.2006, 17:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 26
Всего: 108



оно у тебя вообще компилится? 


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
DimassS
Дата 23.5.2006, 03:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 90
Регистрация: 12.4.2006
Где: Россия, Иркустк

Репутация: 1
Всего: 2



Цитата

используй задержки между созданием форм

так и сделал!!! smile  теперь пашет!!! но про это-то я знал, хотел вот так сделать, но видно одно слово перепутал:

Создание заставки при старте программы 
 Previous  Top  Next  

      
  


Перед появлением главного окна во всех серьёзных приложениях сначала появляется заставка. Теперь и у Вас есть возможность повыёживаться! Для создания заставки выполняем следующую последовательность действий: 

Начинаем создание нового приложение командой "New Application" ("Новое приложение") из меню "File" ("Файл") 

Добавьте ещё одну форму: "New Form"("Новая форма") из меню "File" ("Файл"). Это окно и будет заставкой. У него нужно убрать рамку с полосой заголовка, установив свойство "BorderStyle" в "bsNone". Теперь можно смело разработать дизайн окна заставки. 

Из меню "Project" ("Проект") выбрать команду "Options"("Опции"). Зайти на закладку "Forms"("Формы") и Form2 из списка автоматически создаваемых форм (Auto-Create forms) перенести в список доступных форм (Available forms) 

На форму-заставку с закладки System вынести компонент Timer. В его свойстве Interval установить значение 5000, а в событии OnTimer написать: 



Timer1.Enabled := false; 




Это сделано для того, чтобы заставка была видна в период указанного времени – 5000 миллисекунд, т.е. 5 секунд. 

Перейти в файл проекта, нажав Ctrl+F12 и выбрав Project1. Исходный код должен выглядеть так: 



Код

program Project1; 

uses 
  Forms, 
  Unit1 in 'Unit1.pas' {Form1}, 
  Unit2 in 'Unit2.pas' {Form2}; 

{$R *.RES} 

begin 
  Application.Initialize; 
  Application.CreateForm(TForm1, Form1); 
  Application.Run; 
end. 

  


Теперь мы внесём сюда немного изменений и код должен стать таким: 



Код

program Project1; 

uses 
  Forms, 
  Unit1 in 'Unit1.pas' {Form1}, 
  Unit2 in 'Unit2.pas' {Form2}; 

{$R *.RES} 

begin 
  Application.Initialize; 
  Form2 := TForm2.Create(Application); 
  Form2.Show; 
  Form2.Update; 
  while Form2.Timer1.Enabled do 
    Application.ProcessMessages;// Вот эту строку не так написал!!! 
  Application.CreateForm(TForm1, Form1); 
  Form2.Hide; 
  Form2.Free; 
  Application.Run; 
end. 


Вот такие дела, теперь разобрался!!! Всем большое прибольшое спасобо!!! 
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0498 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.