Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.06;
Скачать: CL | DM;

Вниз

MDI Child ShowModal   Найти похожие ветки 

 
ruslanyd   (2002-12-18 15:56) [0]

Подскажите, плз, как сделать в MDI приложении модальное окно
чтобы оно работало как Child


 
ruslanyd   (2002-12-19 15:54) [1]

Неужели такое никто не делал?
Может я не совсем правильно выразился?


 
stone ©   (2002-12-19 16:06) [2]


> Может я не совсем правильно выразился?


Типа того.

Показать Child модально? или создать модальное окно в MDI?


 
mrcat ©   (2002-12-19 16:13) [3]

объясните, какой смысл создавать модальное окно в MDI


 
stone ©   (2002-12-19 16:17) [4]

Простой пример - Параметры в MS Word


 
mrcat ©   (2002-12-19 16:24) [5]

Модальное окно "Параметры" в MS Word является MDIChild?


 
Игорь Шевченко ©   (2002-12-19 16:26) [6]

Никак не сделать


 
stone ©   (2002-12-19 16:49) [7]


> mrcat © (19.12.02 16:13)
> объясните, какой смысл создавать модальное окно в MDI



> mrcat © (19.12.02 16:24)
> Модальное окно "Параметры" в MS Word является MDIChild?


Нет просто модальное окно (см. mrcat © (19.12.02 16:13))


 
ruslanyd   (2002-12-19 17:46) [8]

2 stone

Показать Child модально


 
ruslanyd   (2002-12-19 18:05) [9]

2 mrcat
Смысл есть, если мне надо закрыть доступ к породившему окну пока будет открыто порожденное


 
ruslanyd   (2002-12-20 12:13) [10]

2 Игорь Шевченко

а сделать как-то можно, т.к. слышал, что есть компонента, делающая тоже самое, но вставлять лишнюю не хочется
тем более, что тут дело, наверно, нескольких строчек


 
VAleksey ©   (2002-12-20 12:24) [11]

ОБЫЧНОЕ окно.ShowModal;

То же и в Word кстати :))
> Модальное окно "Параметры" в MS Word
НЕ >является MDIChild?



 
VAleksey ©   (2002-12-20 12:25) [12]

Знак вопроса забыл стереть в конце :)


 
Marat   (2002-12-20 12:29) [13]

А как сделать модальным Child? То есть из одного Child"а вызывается другой Child (модально) и он должен быть модальным только по отношению к вызвавшему его Child"у, а все другие дочерние окна должны быть доступны


 
Pat ©   (2002-12-20 12:53) [14]

Может я чего и не понял, возможно Вам нужно обычное окно.show стиль StayOnTop?


 
ruslanyd   (2002-12-21 02:37) [15]

2 Marat
Именно так и должно оно работать, т. е. должно быть модальным только по отношению к породившему Child-у и при этом оно должно быть Child-ом по отношению к главной форме (MDIForm)


 
Юрий Зотов ©   (2002-12-21 02:53) [16]

> ruslanyd (21.12.02 02:37)

Забудьте. В Delphi модальное окно всегда модально по отношению ко ВСЕМ предыдущим, а не выборочно. Делайте обычную форму с fsNormal, показывайте ее модально, вот и все проблемы. Кстати, диалоги в Word"е именно так и работают. Да не только в Word"е.


 
Cobalt ©   (2002-12-21 14:01) [17]

2 ruslanyd
Если можете приведите примеры программ, которые
" модальным только по отношению к вызвавшему его Child"у, а все другие дочерние окна должны быть доступны"


 
ruslanyd   (2002-12-21 15:02) [18]

Рассказываю ситуацию

У меня есть формы, отображающие различные справочники
эти формы являются обычными Child формами
из них открываются подчиненные им формы, представляющие развернутый вид записи из справочника

так как я могу открыть сразу несколько справочников, то я также могу открыть несколько развернутых форм

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

кроме того, в формах, где используются справочные данные, я не вываливаю что-то типа DropDownList-ов для выбора значений из справочника, а открываю саму форму справочника, где я сразу могу и выбрать и отредактировать его значения

в этом случае форма справочника тоже должна быть модальной
опять же только по отношению к породившей форме

если здесь справочник будет модальным по отношению ко всему приложению, то само приложение станет менее гибким
именно так я сейчас и сделал :(

вот такая проблема


 
dim- ©   (2002-12-21 15:43) [19]

тогда на при открытии развернутой формы передавай ей id текущей записи, а уже в ней через квери селектом выбирай эту запись и редактируй, так можно редактировать сразу несколько записей на одном справочнике


 
ruslanyd   (2002-12-24 00:56) [20]

Все получилось!

просто перед открытием дочерней формы в
Enable := False;

а при закрытии дочерней возвращаем статус породившей назад
получилось то, что надо

спасибо всем кто принимал участие в дискуссии


 
ruslanyd   (2002-12-24 00:57) [21]

Все получилось!

просто перед открытием дочерней формы в
породившей Enable := False;

а при закрытии дочерней возвращаем статус породившей назад
получилось то, что надо

спасибо всем кто принимал участие в дискуссии



Страницы: 1 вся ветка

Текущий архив: 2003.01.06;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.014 c
4-15375
Pat
2002-11-17 14:06
2003.01.06
Как можно удалить ScrollBar ы у dbGrid?


1-15082
Kostik001
2002-12-22 07:58
2003.01.06
ComboBox с рисунками и проблемами


7-15320
Дмитрий К.К.
2002-10-25 15:58
2003.01.06
Добавить в избранное: Opera


14-15279
RV
2002-12-17 11:53
2003.01.06
Прикол :)


8-15174
Atoll
2002-04-24 17:22
2003.01.06
Как отловить нажатие клавиши с мультимедийной клавиатуры