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

Вниз

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

 
Хэй   (2006-12-20 10:28) [0]

Передаю в длл Application.Handle главной формы...

(DLL) Application.Handle:= (Main) Application.Handle

В длл создаётся форма
frmFeed:= TfrmFeed.Create(Application);
Как создать форму от главного App, операясь на указатель????


 
DVM ©   (2006-12-20 10:30) [1]


> Как создать форму от главного App

что значит ОТ ?


 
Сергей М. ©   (2006-12-20 10:34) [2]


> операясь на указатель


Что значит "операясь" ?
На какой указатель ?
Что значит "как создать форму" ?


 
Хэй   (2006-12-20 10:41) [3]

Когда я передаю Application.Handle главной, и присваеваю его Application.Handle DLL-ки... Действительно указатели становятся одинаковы. Но когдая создаю форму, получается что Application главной формы не равен Application DLL-ки.
Амне надо чтобы форма в DLL создалась с Application главной формы...
Грубо приведу пример: frmFeed:= TfrmFeed.Create(Application.Hanle);....
Можно ли создать форму чтоб  App-on DLL-ки был равен App-on главной формы...??
Передовать App.. главной формы на примую не вижу смысла потому как при выгрузке DLL кудато проподает главная форма...


 
Anatoly Podgoretsky ©   (2006-12-20 10:45) [4]

> Хэй  (20.12.2006 10:41:03)  [3]

Конечно разные, ведь у каждого своя RTTI
А зачем тебе Application главной формы?


 
Хэй   (2006-12-20 10:55) [5]


> Anatoly Podgoretsky ©   (20.12.06 10:45) [4]


Чтоб форма создалась именно в Main форме...


 
Skier ©   (2006-12-20 10:57) [6]


> Чтоб форма создалась именно в Main форме...

Main - это форма вызывающего приложения ?


 
Хэй   (2006-12-20 10:57) [7]


> Anatoly Podgoretsky ©   (20.12.06 10:45) [4]


Чтоб форма создалась именно в Main форме...
Когда App.. разные Ни одна из MDI форм, не найдена ! Как поступить???


 
Сергей М. ©   (2006-12-20 11:00) [8]


> Чтоб форма создалась именно в Main форме


А причем здесь Owner ?
Это из другой оперы.

Передавая Application в кач-ве параметра Owner в конструкторе компонента, ты тем самым указываешь, что владельцем создаваемой формы отныне будет указанный объект Application. Владелец компонента (Owner) и родитель (Parent) - отнюдь не одно и то же.


 
Хэй   (2006-12-20 11:00) [9]


> Skier ©   (20.12.06 10:57) [6]


Да!

Просто если передать App на прямую все норм... Но при выгрузке dll проподает кудато главная форма...


 
Сергей М. ©   (2006-12-20 11:03) [10]


> при выгрузке dll проподает кудато главная форма


Выгрузка dll, надеюсь, осуществляется тобой после разрушения формы TfrmFeed ?


 
clickmaker ©   (2006-12-20 11:03) [11]


> [9] Хэй   (20.12.06 11:00)

У тебя MDI-главное в экзе, а дочерние - в ДЛЛ?
Ну так экспортируй из ДЛЛ фреймы и клади на MDI-child


 
Skier ©   (2006-12-20 11:04) [12]


> Когда App.. разные Ни одна из MDI форм, не найдена ! Как
> поступить???

используй Application.CreateForm(...)


 
Хэй   (2006-12-20 11:06) [13]


> Сергей М. ©   (20.12.06 11:03) [10]


Именно... Даже:
frmFeed.Free;
frmFeed:= nil;
ошибка блин из-за чего не пойму...


 
Сергей М. ©   (2006-12-20 11:09) [14]


> Хэй   (20.12.06 11:06) [13]


У тебя что, одна-единственная доч.форма создается ?


 
Desdechado ©   (2006-12-20 11:09) [15]

> Просто если передать App на прямую все норм... Но при выгрузке dll проподает кудато главная форма...
У тебя в этом случае получается один App на двоих. И выгружаясь, DLL разрушает свой App, а т.к. он у тебя еще и главный, то и он разрушается.


 
KSergey ©   (2006-12-20 11:12) [16]

Если надо создавать MDI форму из DLL (вроде в этом вопрос?) - то надо просто погуглить.

Это часто обсуждаемый вопрос.
Вот, например, попалось:

http://citforum.ru/programming/digest/dlldelphi.shtml

или вот

http://groups.google.com/group/fido7.ru.delphi/browse_thread/thread/3b7071165041b663/644152dfe3bf75c5%23644152dfe3bf75c5


 
Хэй   (2006-12-20 12:30) [17]

Может не в тему написано будет.... Но может кто знает...
Как отловить сообщение переданное главной форме..
PostMessage(Application.Handle, WM_USER+ 1, 0, 0);
???


 
Gero ©   (2006-12-20 12:44) [18]

> [17] Хэй   (20.12.06 12:30)

Application.OnMessage


 
Сергей М. ©   (2006-12-20 12:51) [19]


> Хэй   (20.12.06 12:30) [17]


ПРежде чем ловить, правильно посылай:
PostMessage(MainForm.Handle, ...);


 
SpellCaster   (2006-12-20 12:57) [20]

TFormMain = class...
...
procedure ReactOnMsg(m: Tmessage); message WM_USER+1;
...
end;
?


 
Хэй   (2006-12-20 13:04) [21]


> SpellCaster   (20.12.06 12:57) [20]

Прошу прощения, что внутри процедуры.. Не пойму связи (типа отправил получил !) ???


 
KSergey ©   (2006-12-20 13:40) [22]

> Хэй   (20.12.06 13:04) [21]
> Прошу прощения, что внутри процедуры.. Не пойму связи (типа
> отправил получил !) ???

См. Сергей М. ©   (20.12.06 12:51) [19]  дял этого случая.

А для PostMessage(Application.Handle, WM_USER+ 1, 0, 0); - см. Gero ©   (20.12.06 12:44) [18]



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

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

Наверх




Память: 0.51 MB
Время: 0.039 c
3-1161622321
Kolan
2006-10-23 20:52
2007.01.14
Связь один-к-одному SQL Server. Как? И нужна ли она мне?


2-1167067759
Troan_81
2006-12-25 20:29
2007.01.14
Класс окна


15-1166736476
default
2006-12-22 00:27
2007.01.14
Сейчас я вас загадаю волшебную последовательность


2-1167122730
jjj
2006-12-26 11:45
2007.01.14
Работа с запросами


2-1166735707
Жир
2006-12-22 00:15
2007.01.14
???????? вместо надписей