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

Вниз

Поиск окон в MDI   Найти похожие ветки 

 
EvgeniyR ©   (2004-03-24 15:15) [0]

Из одной дочерней формы пытаюсь узнать открыта ли другая дочерняя форма: if FindWindow("TForm1", "Тра-ля-ля") <> 0 then exit, но всегда получается, что форму не находит. Как еще можно найти открытую форму? Заранее спасибо.


 
Defunct ©   (2004-03-24 15:19) [1]

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


 
EvgeniyR ©   (2004-03-24 15:45) [2]

Что-то не понятно...


 
Defunct ©   (2004-03-24 15:52) [3]

В главной форме храните динамический массив хендлов всех существующих на данный момент MDI Child. А из любого MDI Child вы можете обратиться к MainForm всегда и получить требуемый хендл.


 
Defunct ©   (2004-03-24 16:15) [4]

Попытаюсь объяснить

Допустим у вас есть MDI приложение с главной формой MainForm. В главной форме по какому-то событию создаются дочерние формы MDIChild, главная форма имеет информацию о всех создаваемых формах (Handle, указатель на экземпляр и т.п.) и может свободно хранить эти данные в каком-то массиве, позже это позволит главной форме обращаться непосредственно к любой дочерней форме (связь один-ко-многим). Дочерние же формы знают только о существовании главной формы (связь много-к-одному), вот к ней они и должны обращаться когда встает вопрос о передаче какой-то информации другому MDIChild.


 
Плохиш   (2004-03-24 16:20) [5]

А чем MDIChildren не подходит?


 
Digitman ©   (2004-03-24 16:26) [6]


> открыта ли другая дочерняя форма: if FindWindow


форма - это форма, окно - это окно

на то и формы, чтобы легче было контролировать окна

спрашивается, на кой шут манипулировать окнами, если контролирующая MDIParent-форма содержит всю исчерпывающую инф-цию о своих MDIChild-формах ? проктология, однако ..


 
Defunct ©   (2004-03-24 16:32) [7]

А вообще, если у вас возник вопрос о передаче информации между MDIChild формами, это говорит о том, что MDI приложение спроектировано не верно.



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

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

Наверх




Память: 0.48 MB
Время: 0.034 c
6-1075973336
mahsus
2004-02-05 12:28
2004.04.11
Протокол ComPort


14-1079469946
Andy BitOff
2004-03-16 23:45
2004.04.11
Почему вновь прибывшие на форум не жмут поиск?


11-1058608108
Dentall
2003-07-19 13:48
2004.04.11
Динамическое создание формы в KOL


3-1078999104
kvi
2004-03-11 12:58
2004.04.11
TClientDataSet


1-1082036179
alienserg
2004-04-15 17:36
2004.04.11
Вызов процедуры родительского окна из формы в DLL. Как?