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

Вниз

работа с компонентами delphi   Найти похожие ветки 

 
tvv   (2007-02-06 17:24) [0]

у меня такой вопрос:
Я создаю 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;
---

В чем может быть причина?!


 
unknown ©   (2007-02-06 18:14) [1]


> tvv   (06.02.07 17:24)
> Если я работаю с DLL из Delphi, CBuilder то все компоненты
> нормально отображаются, но если я подключаю DLL с помочью
> другого приложения

Это как это?


 
iXT ©   (2007-02-06 20:29) [2]


> Я создаю DLL в которой находяться несколько компонентов
> Delphi, которые должны динамически создаваться


DLL не содержит ни одного компонента, как ты сие умудрился?


 
GrayFace ©   (2007-02-08 23:02) [3]

tvv   (06.02.07 17:24)
В чем может быть причина?!

Многие компоненты должны лежать на форме. Например, кто-то ждет, что их Parent будет им посылать CN_ сообщения и т.п.

Помещая форму(компоненты) в dll готовься к: отсутствию реакции компонентов(в частности, SpeedButton с Flat=true), зависанию при вызове TThread.Synchronize, отсутствию реакции на изменение темы, неправильному поведению Action"ов, уходу на задний план после минимизации, отжиранию 4кб при подключении dll.


 
GrayFace ©   (2007-02-08 23:07) [4]

Edit: отсутствию реакции компонентов на вход и выход мышки

Если твоя форма модальная, то отсутствия реакции компонентов на вход и выход мышки, зависания при вызове TThread.Synchronize не будет.


 
Loginov Dmitry ©   (2007-02-09 07:45) [5]

> Помещая форму(компоненты) в dll готовься к: отсутствию реакции
> компонентов(в частности, SpeedButton с Flat=true), зависанию
> при вызове TThread.Synchronize, отсутствию реакции на изменение
> темы, неправильному поведению Action"ов, уходу на задний
> план после минимизации, отжиранию 4кб при подключении dll.


Вот разогнался-то как :)

А не такие продвинутые молча сидят и пихают в DLL все что угодно (компоненты, Экшены, потоки), подобных постов не читают и проблем не имеют.


 
Leonid Troyanovsky ©   (2007-02-09 09:13) [6]


> Loginov Dmitry ©   (09.02.07 07:45) [5]

> А не такие продвинутые молча сидят и пихают в DLL все что
> угодно (компоненты, Экшены, потоки), подобных постов не
> читают и проблем не имеют.


Имеют, имеют.
Но не знают, т.к. даже не читают.

--
Regards, LVT.



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

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

Наверх




Память: 0.48 MB
Время: 0.03 c
15-1170244018
пластилин глазами хакера
2007-01-31 14:46
2007.02.25
Антивирус


2-1170940448
pathfinder
2007-02-08 16:14
2007.02.25
Объявление функций.


2-1170671273
kail
2007-02-05 13:27
2007.02.25
запуск программы один раз


15-1169941148
Gero
2007-01-28 02:39
2007.02.25
Использование взломанных версий программ грешно


2-1170457963
acorables
2007-02-03 02:12
2007.02.25
Передача данных(массива) через DLL.