![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
работа с компонентами delphi [D6, D7, Win2k, WinXP]
tvv © (2007-02-06 17:24:00)у меня такой вопрос:
Я создаю DLL в которой находяться несколько компонентов Delphi, которые должны динамически создаваться
Вот пример:
---
SomeButton := TSomeButton.Create(nil);
SomeButton.ParentWindow := WindowHandle;
SomeButton.Visible = True;
---
Если я работаю с DLL из Delphi, CBuilder то все компоненты нормально отображаются, но если я подключаю DLL с помочью другого приложения то они не отображаются но при этом никаких ошибок не возникает.
Но если я пытаюсь создать дочернию форму то все нормально!
---
SomeForm := TSomeForm.Create(nil);
SomeForm.ParentWindow := WindowHandle;
SomeForm.Visible = True;
---
В чем может быть причина?!
Leonid Troyanovsky (2007-02-09 09:13:00) [1]
> Loginov Dmitry © (09.02.07 07:45) [5]
> А не такие продвинутые молча сидят и пихают в DLL все что
> угодно (компоненты, Экшены, потоки), подобных постов не
> читают и проблем не имеют.
Имеют, имеют.
Но не знают, т.к. даже не читают.
--
Regards, LVT.
Loginov Dmitry (2007-02-09 07:45:00) [2]> Помещая форму(компоненты) в dll готовься к: отсутствию реакции
> компонентов(в частности, SpeedButton с Flat=true), зависанию
> при вызове TThread.Synchronize, отсутствию реакции на изменение
> темы, неправильному поведению Action'ов, уходу на задний
> план после минимизации, отжиранию 4кб при подключении dll.
Вот разогнался-то как :)
А не такие продвинутые молча сидят и пихают в DLL все что угодно (компоненты, Экшены, потоки), подобных постов не читают и проблем не имеют.
GrayFace (2007-02-08 23:07:00) [3]Edit: отсутствию реакции компонентов на вход и выход мышки
Если твоя форма модальная, то отсутствия реакции компонентов на вход и выход мышки, зависания при вызове TThread.Synchronizeне будет.
GrayFace (2007-02-08 23:02:00) [4]tvv (06.02.07 17:24)
В чем может быть причина?!
Многие компоненты должны лежать на форме. Например, кто-то ждет, что их Parent будет им посылать CN_ сообщения и т.п.
Помещая форму(компоненты) в dll готовься к: отсутствию реакции компонентов(в частности, SpeedButton с Flat=true), зависанию при вызове TThread.Synchronize, отсутствию реакции на изменение темы, неправильному поведению Action'ов, уходу на задний план после минимизации, отжиранию 4кб при подключении dll.
iXT (2007-02-06 20:29:00) [5]
> Я создаю DLL в которой находяться несколько компонентов
> Delphi, которые должны динамически создаваться
DLL не содержит ни одного компонента, как ты сие умудрился?
unknown (2007-02-06 18:14:00) [6]
> tvv (06.02.07 17:24)
> Если я работаю с DLL из Delphi, CBuilder то все компоненты
> нормально отображаются, но если я подключаю DLL с помочью
> другого приложения
Это как это?