Вниз
Скачать: CL | DM;

Как организовать свяэь дочерних окон?   Найти похожие ветки 

← →
shel   (2003-01-10 03:22) [0]

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


← →
Моджахед   (2003-01-10 03:37) [1]

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


← →
shel   (2003-01-10 03:46) [2]

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


← →
Моджахед   (2003-01-10 03:48) [3]

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

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


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

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


← →
shel   (2003-01-10 11:55) [5]

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


← →
stone ©   (2003-01-10 12:39) [6]

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


← →
Zemal ©   (2003-01-10 12:44) [7]

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



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.011 c
6-62697
max_28
2002-11-21 02:25
2003.01.20
определение имени компьютера по его IP адресу


1-62643
Юра
2003-01-09 15:56
2003.01.20
Рисование в TPanel


14-62747
VJar
2003-01-04 13:45
2003.01.20
Ищу компонент


4-62926
ProtoSoft
2002-11-27 23:11
2003.01.20
Мастера, помогите еще раз. В моей проге...


4-62911
krammer
2002-12-03 20:03
2003.01.20
Как узнать размер экрана (разрешение) и длину видео-файла?




   Наверх