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

Вниз

Dll Forms In Delphi   Найти похожие ветки 

 
SkySlider ©   (2003-06-16 16:15) [0]

Добрый день.

При присвоении свойству Parent значения для вызываемой (из библиотеки) формы она становится не видима. Хотя для обычных форм можно запросто написать подобное:

myDllForm.Align = alClient;
myDllForm.Parent = Panel1;

(или myDllForm.Parent = myMainForm;)

и все прекрасно. В чем здесь грабли?


 
Skier ©   (2003-06-16 16:19) [1]

>SkySlider © (16.06.03 16:15)
1) А грабли в том что TYourForm в host-приложении и TYourForm в
DLL это разные классы.
2) Бывает полезно делать такую вещь в DLL
Application.Handle := HostAppHandle;


 
Юрий Федоров ©   (2003-06-16 16:21) [2]

Все та же попытка передачи указателя на экземпляр класса в DLL.
Либо компилировать все с пакетами, либо использовать ParentWindow


 
SkySlider ©   (2003-06-16 17:26) [3]

1. Application.Handle := HostAppHandle;
Возможно и полезно, только при данном насморке не помогает.

2. и в приложении, и в Dll используется один класс.
class TfrmCommonDlg : public TForm
{
...
};


3. Можно подробнее насчет ...все с пакетами... и ...ParentWindow...


 
Юрий Федоров ©   (2003-06-16 17:39) [4]

>>2. и в приложении, и в Dll используется один класс.
Разные классы, так как класс этот компилирется 2 раза - в Exe и в DLL - получаем 2 разных класса, пусть и с одинаковыми методами\свойствами.
>>...все с пакетами
см. Project Options \ Packages \ Build with run-time packages.
Включить нужно тот пакет, в который входит TPanel, причем как в Exe так и в DLL
При этом при переносе на другую машину придется соответствующий BPL тащить с собой.
>>...ParentWindow
Вместо Parent присваивать ParentWindow(handle окна)


 
SkySlider ©   (2003-06-16 17:46) [5]

Юрий Федоров спасибо за объяснение ... ПОЛУЧИЛОСЬ!!! Ураа!



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

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

Наверх




Память: 0.47 MB
Время: 0.024 c
14-84740
AlexZ
2003-05-30 07:48
2003.06.26
Проблемы с системой


9-83851
ArtGamer my name
2003-01-12 21:37
2003.06.26
А как в GLScene удалять объекты из сцены в Runtime???


1-84134
Vulko
2003-06-08 11:13
2003.06.26
Положение текстового курсора.


7-84798
Ал
2003-04-17 09:27
2003.06.26
Как сменить фон раб. стола (bmp), если включен ActiveDesktop?


14-84696
Soft
2003-06-03 18:49
2003.06.26
Это должен знать каждый