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

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

MDI Childs [D5, Win2k]


Maxximusss ©   (2004-08-12 16:03:00) 

У меня 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.


nikkie   (2004-08-16 14:21:00) [1]

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


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

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

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


nikkie   (2004-08-13 18:13:00) [3]

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


nikkie   (2004-08-13 18:12:00) [4]

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


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

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


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

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


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

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


Sandman25   (2004-08-12 16:18:00) [8]

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

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


Sandman25   (2004-08-12 16:17:00) [9]

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

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


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

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

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

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


Sandman25   (2004-08-12 16:06:00) [11]

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


Наверх

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