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

Вниз

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

 
Maxximusss   (2004-08-12 16:03) [0]

У меня MDI application.
Есть модуль Childwin - шаблон создаваемого окна.
в модуле прописана некоторая переменная, пусть num:integer.
В основном модуле есть процедурка:

procedure TMainForm.CreateMDIChild(const Name: string; var Child: TMDIChild);
begin
 { create a new MDI child window }
 Child := TMDIChild.Create(Application);
 Child.Caption := Name;
end;

она по идее должна возвращать объект Child.
Если я два раза вызову процедуру:
CreateMDIChild("1",Child1);
CreateMDIChild("2",Child2);
то будут созданы два окна. Так вот, num будет создана одна или две?
Мне очень нужно, чтобы при каждом вызове createMDIChild создавались независимые окна, с независимыми переменными num.


 
Sandman25 ©   (2004-08-12 16:06) [1]

Сделайте Num членом класса


 
Maxximusss   (2004-08-12 16:16) [2]

В смысле добавить его сюда?

type
 TMDIChild = class(TForm)
...
 private
   СЮДА
 public
   ИЛИ СЮДА
 end;

есть проблема: на самом деле num:MyType, а MyType определен в основном модуле. Если я поставлю в Uses Main, то будет циклическая ссылка на модули, т.к. Main тоже ссылается на ChildWin. Че делать, не знаю :)


 
Sandman25 ©   (2004-08-12 16:17) [3]

>Так вот, num будет создана одна или две?

Модуль один? Значит, и переменная одна.


 
Sandman25 ©   (2004-08-12 16:18) [4]

>Че делать, не знаю :)

Завести еще один unit.


 
Maxximusss   (2004-08-12 16:33) [5]

А если надо много однотипных окон создать, но с разным содержимым?
У меня графики сторятся, одним способом, но в каждом окне из разного массива.


 
Sandman25 ©   (2004-08-12 16:35) [6]

О параметрах методов уже читали? :)


 
Maxximusss   (2004-08-12 16:41) [7]

Был у нас один препод, задал решить одну задачку в Maple V, на все вопросы отвечал одинаково: "читайте хелп". Задачу никто так и не решил :))
Ладно, ща попробую покопаться в хелпе... Спасибо за ответы.


 
nikkie ©   (2004-08-13 18:12) [8]

>Main тоже ссылается на ChildWin.
в interface section? зачем?


 
nikkie ©   (2004-08-13 18:13) [9]

>MyType определен в основном модуле
зачем?


 
Maxximusss   (2004-08-16 12:16) [10]

Main ссылается потому что в нем есть процедурка создания окна,
CreateMidiChild, и она возвращает переменную типа MDIChild. ТОка сейчас нашел что есть массив MDIChildren, и возвращать ничего не надо.
А MyType определен в головном модуле потому что это единый тип, с которым работают почти все модули...

А вообще, есть где-нибудь справочне пособие по MDI? А то блин тяжело писать, не понимая толком что делается и какие есть инструменты.


 
nikkie ©   (2004-08-16 14:21) [11]

>А MyType определен в головном модуле потому что это единый тип, с которым работают почти все модули...
надо сделать отдельный юнит и проблем не будет.



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

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

Наверх




Память: 0.49 MB
Время: 0.062 c
3-1091690532
RDen
2004-08-05 11:22
2004.08.29
Почему не создаётся поле?


3-1091694318
Misha Uskov
2004-08-05 12:25
2004.08.29
проблемы с серверным курсором в ADO


1-1092222808
Боян Георгиев
2004-08-11 15:13
2004.08.29
Вопрос о TJPEGImage


3-1091606930
сергей1
2004-08-04 12:08
2004.08.29
dbGrid


1-1092389998
Aleksander
2004-08-13 13:39
2004.08.29
Как обработать символ < >