Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Помогите начинающему программисту [D7]


greengeneral ©   (2006-09-13 11:44:00) 

Здравствуйте. Я только начинаю познавать Delphi и у меня такой вопрос:
Я пробую написать программу. в котором используются несколько Form и столкнулся с такой проблемой когда я  открываю новую form предыдущая не закрывается, а когда хочу вернуться обратно ты выходит ошибка: Project Project1.exe raised exception class EInvalidOperation with message ‘Cannot make a visible window modal’. Process stopped.  Use Step or Run to continue.

Вот код:

procedure TForm1.Button1Click(Sender: TObject);
begin
form3.showModal;
form1.Close;
end;

////Открываю, Form3, и хочу закрыть form1, но не закрывается

procedure TForm3.Button2Click(Sender: TObject);
begin
form2.showmodal;
form3.Close;
end;

///// Открываю Form2, и хочу закрыть form3

procedure TForm2.Button12Click(Sender: TObject);
begin
form1.showmodal;

end;

\\\\ Хочу открыть form1 и сдесь выходит ошибка

Подскажите пожалуйста, может другие команды надо использовать.
Заранее спосибо!!!


MsGuns   (2006-09-13 12:34:00) [1]

Сначала разобраться, что есть Главная форма и в чем ее отличие от остальных, используемых в проекте.


Рамиль   (2006-09-13 11:49:00) [2]


> Вот код:
>
> procedure TForm1.Button1Click(Sender: TObject);
> begin
> form3.showModal;
> form1.Close;
> end;

Учти так же, что закрытие главной формы приведет к завершению приложения.


Ega23   (2006-09-13 11:47:00) [3]

Вместо ShowModal используй просто Show, вместо Close используй Hide.
Т.е.
procedure TForm1.Button1Click(Sender: TObject);
begin
form3.show;
form1.Hide;
end;

////Открываю, Form3, и хочу закрыть form1, но не закрывается

procedure TForm3.Button2Click(Sender: TObject);
begin
form2.show;
form3.Hide;
end;

///// Открываю Form2, и хочу закрыть form3

procedure TForm2.Button12Click(Sender: TObject);
begin
form1.show;

end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо