| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Таймер. |
| Автор: Malish 13.3.2006, 18:28 |
| привет!!! у меня такая проблема: Form1 выступает в моей программе как заставка, после которой через 3 секунды должна появиться Form2. если я делаю так: void __fastcall TForm1::Timer1Timer(TObject *Sender) { Form1->Visible = false; Form2->Visible = true; Form1->Close(); } у меня после заставки, программа выключается полностью, т.е. нет входа в Form2. Как сделать вход во 2-ую форму, при этом полностью закрыть первую? |
| Автор: _hunter 13.3.2006, 19:02 |
| Application->ShowMainForm в false поставь вместо Form1->Close(); |
| Автор: Ctrl_Alt_Del 13.3.2006, 19:10 |
| Form1->Hide(); |
| Автор: Malish 13.3.2006, 19:11 |
| _hunter, извини я немножечко не понял что куда ставить так прога работает, но при нажатии на Form2 на крестик(Выход), прога через некоторое время опять заходит в Form2 Form1->Visible = false; Form2->Visible = true; Application->ShowMainForm = false; |
| Автор: Adil' 13.3.2006, 19:11 |
| Malish, а лучше посмотри пример "$BCB5\Examples\DBTasks\MastApp\" как делать заставку. |
| Автор: Malish 13.3.2006, 19:17 |
| Defucker, ты не повереш, Form1->Visible = false; Form2->Visible = true; Form1->Hide(); аналогичная ситуация, прога заходит на 2-ю форму, но при нажатии на крестик(в правом верхнем углу формы) опять, спустя некоторое время перезаходит в Form2. |
| Автор: Stentor 13.3.2006, 19:21 |
| На главной форме делаем так: void __fastcall TMainForm::FormShow(TObject *Sender) { Splash->ShowModal(); } // Splash (cплэш) – это заставка которая появляется перед запуском программы На заставке (сплеше) делаем так: //--------------------------------------------------------------------------- void __fastcall TSplash::FormCreate(TObject *Sender) { MainForm->Visible=false; } //--------------------------------------------------------------------------- void __fastcall TSplash::Timer1Timer(TObject *Sender) { MainForm->Visible=true; Close(); } //--------------------------------------------------------------------------- Замени MainForm на Form2, а Splash на Form1 (или переименуй формы). Вроде ничего не забыл... Проверь в настройках проекта, какая форма является главной (т.е. main). В твоем случае должна это д.б. Form2. |
| Автор: Ctrl_Alt_Del 13.3.2006, 19:22 |
| Malish, правильно ведь таймер срабатывает через определенный интервал циклически. Добавь еще Timer1->Enabled=false; |
| Автор: Malish 14.3.2006, 16:07 |
| Stentor, прога заработала. Спасибо огромное всем |