![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Работа с окнами [D7, XP]
Poroshm © (2007-08-17 12:10:00)Здравствуйте! Подскажите как сделать чтобы одна форма(главная) скрылась а другая открылась и стала активной.
После form2.show; открывается форма, но активной не становится, а главную закрыть не как не могу. после form1.visible=false; идут ошибки.
Anatoly Podgoretsky (2007-08-19 12:53:00) [1]Это мы уже слышали.
Poroshm (2007-08-18 23:16:00) [2]
> ...
> Form1.Hide;
> Form2:=TForm2.Create(Application);
> try
> .....
> Form2.ShowModal;
> if Form2.ModalResult=mrOk then....
> finally
> Form2.Free;
> Form1.Show;
> end;
Вот это не работает
iXT (2007-08-18 16:08:00) [3]> где это все надо прописать
там, где хочешь, что бы было :), а вообще брось эту затею. не твое это.
{RASkov} (2007-08-18 15:28:00) [4]> и что такое AutoCreate?
Это строчки в DPR файле
Application.CreateForm(TFormN, FormN);
Или что тоже самое, но более верное для начала, в Project>Options - Auto-create forms
poroshm (2007-08-18 13:34:00) [5]Ув. Мастера обратите пожалуйста внимание на мой вопрос.
poroshm (2007-08-17 21:16:00) [6]Просите за тупость, но где это все надо прописать? и что такое AutoCreate?
poroshm (2007-08-17 21:16:00) [7]Просите за тупость, но где это все надо прописать? и что такое AutoCreate?
iXT (2007-08-17 16:49:00) [8]...
Form1.Hide;
Form2:=TForm2.Create(Application);
try
.....
Form2.ShowModal;
if Form2.ModalResult=mrOk then....
finally
Form2.Free;
Form1.Show;
end;
+в файле проекта форму не создавать (Вынуть из AutoCreate);
Anatoly Podgoretsky (2007-08-17 16:47:00) [9]> Альф (17.08.2007 16:28:04) [4]
Он утверждает, что у него ругается про form2.show
Альф (2007-08-17 16:28:00) [10]
> Anatoly Podgoretsky © (17.08.07 16:19) [3]
> > Poroshm (17.08.2007 16:12:02) [2]
>
> Смени свойство Visible
Анатолий - думаю не поможет, он же делает вот это:
> procedure TForm1.FormShow(Sender: TObject);
> begin
> if paramStr(1)<>'system.ini' then
> begin
> form2.show;
> form2.BringToFront;
> form1.hide;
> end;
> end;
Poroshm (2007-08-17 16:28:00) [11]Поменял, окно главной формы(form1) стало видимым, Окно настройки(form2) тоже, но теперь выдается сообщение Access voliatio at adress EFF343 in module....... вообще ни че не понимаю!!!!!!!!!!!!!!!!!!!!!!!
Anatoly Podgoretsky (2007-08-17 16:19:00) [12]> Poroshm (17.08.2007 16:12:02) [2]
Смени свойство Visible
Poroshm (2007-08-17 16:12:00) [13]В принципе это работает, но мне нодо чтобы form2 (form2 - настройка пиложения) появлялась в момент запуска приложения, пробовал сделать это так:
procedure TForm1.FormShow(Sender: TObject);
begin
if paramStr(1)<>'system.ini' then
begin
form2.show;
form2.BringToFront;
form1.hide;
end;
end;
но при запуске form2 выдается Cannot Chage Visible in OnShow or OnHide.
Elen (2007-08-17 13:20:00) [14]form2.show;
form2.BringToFront;
form1.visible:=false;
P.S. Ошибки нужно не прятать.