Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.06.26;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.026 c
11-84057
karan1
2002-10-10 18:26
2003.06.26
Подскажите, не находит модуль ExptIntf.dcu ... искал нет


14-84714
АлК
2003-06-05 13:44
2003.06.26
Project Manager в D7


1-84085
Zyx/2
2003-06-10 12:12
2003.06.26
Scriptovyj jazyk


1-84224
Тих
2003-06-12 23:15
2003.06.26
ФОрматирование даты


8-84466
Intell
2003-03-07 17:57
2003.06.26
Как сграбить картинку с видеоисточника?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский