Главная страница
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.031 c
2-1170605257
Гость_
2007-02-04 19:07
2007.02.25
SQL фрагмент


2-1170782271
Novichok_new
2007-02-06 20:17
2007.02.25
Цикл for назад


4-1161097531
Виктор1111
2006-10-17 19:05
2007.02.25
Узнать размер кучи по её хэндлу


2-1170936785
Darvin
2007-02-08 15:13
2007.02.25
Точное отслеживание времени с точностью 10 миллисекунд


1-1167240571
Чапаев
2006-12-27 20:29
2007.02.25
Затормозить мышку