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

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

Как организовать свяэь дочерних окон? [D6, Win2k, WinXP]


shel ©   (2003-01-10 03:22:00) 

Имеется MDI-приложение. Для родительской формы определены несколько разных дочерних окон(1,2). У одного дочернего окна(2) в public есть процедура(Пусть myProcedure). Вопрос: Как из другого(1) дочернего окна вызвать
процедуру myProcedure? Как я понимаю, это делается через родительское окно.
Если возможно, приведите пример. Зарание благодарен за ответ.


Zemal   (2003-01-10 12:44:00) [1]

Да были такие проблемы почти у всех!!! Просто вопрос слишком пространный!!! Во-первых: чтобы воспользоваться методом объекта, надо иметь этот объект, а не класс... т.е. должен быть определённый экземпляр класса, метод которого ты должен вызвать. Во-вторых: это надо делать через какой-то менеджер дочерних окон, в этом может помочь объект Application, из которого можно получить список дочерних окон, найти нужный экземпляр дочернего окна и вызвать нужный метод этого экземпляра. В-третьих: всё это достаточно громоздко и требует наличия определённых знаний, так что почитай книги. Что ещё посоветовать незнаю... свою голову не приставишь, а писать за тебя эту бадягу никто небудет. Единственный выход - читай литературу.


stone   (2003-01-10 12:39:00) [2]

Какую ошибку выдает?
Оба ли окна созданы в момент вызова процедуры?


shel   (2003-01-10 11:55:00) [3]

Неужели ни у кого не было таких проблем?


shel   (2003-01-10 03:54:00) [4]

Если работать, как с простым модулем(в uses я всё это дело прописал), то Delphi ругается.


Моджахед   (2003-01-10 03:48:00) [5]

сорри, поспешил с постом.
"Окно"(2) обязано иметь ссылку в uses на "окно"(1).

Значит, описание твоей формы №2 доступно. Ну, и вопрос только в том, как ты организуешь систему "окон". Можешь сделать глобальный менеджер окон в виде компонента или объекта, размещенный в главной MDI форме, и все запросы вести через него (очень удобно, например, через сообщения). Это все детали, связанные с логикой работы твоего приложения.


shel   (2003-01-10 03:46:00) [6]

Я так пробывал делать, но Delphi ругается . Дочернее окно создаётся при нажатии пимпы на главной (родительской) форме


Моджахед   (2003-01-10 03:37:00) [7]

а где окно дочернее создается? Там же, наверное, и переменная, в которой ссылка на доч. окно. Процедура, я так понял, в классе описана? Ну и вызовай frmsomething.myproc.


Наверх

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