Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Две модальные формы


Автор: Calypso 11.5.2005, 09:57
Есть две формы Form1 и Form2
делаем
Код

Form1.Show;
Form2.showmodal;

, затем кнопка на Form2 делает следующее:
Код

....
  if Form1.Visible then
      Form1.Hide;
  Form1.ShowModal;
...

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

Автор: Marriage 11.5.2005, 10:11
Код

 if Form1.Visible then
      Form1.Hide;
  Form1.ShowModal;


Если честно смысл этого кода не пойму .... smile
К тому же вылетает ошиба "Can't show visible window MODAL", если 2 раза кнопку нажмешь ... smile

Автор: ~FoX~ 11.5.2005, 10:38
Цитата(Marriage @ 11.5.2005, 11:11)
Если честно смысл этого кода не пойму ....

Действительно код странный.

Попробуй заменить Form1 на Application

Автор: Calypso 11.5.2005, 11:00
Цитата
Действительно код странный.

Странно, а чего странного?
Если этот код убрать,то мыскакивает матерок "Can't show visible window MODAL".
Здесь одна модальная форма пытается сделать активной другую(немодальную), и производится проверка не открыта ли форма уже, а если открыта, то закрыть её,а потом сделать модальной.


Добавлено @ 11:03
Marriage если 2 раза кнопку нажмешь
В том то и дело, что нажать 2 раза невозможно ибо формы становятся недоступными (хотя и видимыми).

Автор: z-END 11.5.2005, 11:04
вот представь свадьба... жених (форм1) несет невесту на руках (форм2) и вдруг невеста решает взять на руки мужа не вставая на землю... это не странно? ты пытаешься сделать то-же самое..

Автор: Marriage 11.5.2005, 11:57
Лучше создай такое же окно (как Form1), и делай ему ShowModal smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)