Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: MDI + ShowModal  (Прочитано 8230 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Helium
Гость
« : 05-02-2004 22:47 » 

Можно ли каким-либо образом отобразить форму модально только для одного из дочерних окон (подразумевается MDI приложение), а не для всего приложения в целом (не обязательно средствами VCL)?

Дык, кто знает и поделиться - заранее благодарен  Улыбаюсь .
Записан
x77
Модератор

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #1 : 07-02-2004 11:58 » 

стандартными средствами этого сделать нельзя.  а программно - вполне можно. допустим, Form2 - это mdi-форма, а Form3 - форма, отображаемая модально. модальность будет заключаться в том, что пока Form3 не закрыта, мы не можем попасть на Form2, хотя можем попасть на все остальные формы, правильно? значит, в обработчике Form2.OnActivate надо просто прописать проверку, видима ли Form3, и если да, то передать на неё фокус:
Код:

procedure TForm2.FormActivate)Sender{ TObject:;
begin
  if Form3.Showing then
    Form3.SetFocus;
end;
Записан

x77
Модератор

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #2 : 07-02-2004 12:00 » 

да, ну и саму Form3 вызывать надо обычным Show, а не ShowModal. на ModalResult это не повлияет, т.е. мы сможем также отслеживать, какая конпка была нажата.
Записан

Helium
Гость
« Ответ #3 : 07-02-2004 13:34 » 

Да, это конечно вариант, хотя и не такой хороший как что-нить более стандартное. Но раз стандартно низя  Жаль , то будет так.

Но в любом случае бальшое пасибо.  Отлично
Записан
x77
Модератор

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #4 : 07-02-2004 14:02 » 

Улыбаюсь
Записан

Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines