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

Вниз

Загрузка формы из Dll в TPanel основного приложения   Найти похожие ветки 

 
Bams   (2004-12-10 15:41) [0]

В приложениии:
...
 Panel1.Hide();

 @GetPlugin := GetProcAddress(LibraryHandle, "GetPlugin");
 Plugin := GetPlugin();
 Plugin.Load(Application, Panel1);
 
 Panel1.Show();  

...

Код Dll:
procedure TPlugin.Load(AApp: TApplication; AParent: TWinControl);
begin
 DLLApp := Application;
 Application := AApp;

 frmPlugin := TfrmPlugin.Create(nil);
 //frmPlugin.ParentWindow := AParent.Handle;
 frmPlugin.Parent := AParent;
 frmPlugin.Show();
end;


Так вот. Если в dll пишу frmPlugin.Parent := AParent; то форма грузится в панельку как надо, т.е. делает все аллигны. НО! При попытке работать с контролами вываливается "control has no parent window" :(
Идем далее. Меняем на frmPlugin.ParentWindow := AParent.Handle; все контролы загруженной формы начинают работать как надо, но форма имеет размер 1024х768 (это внутри панельки) и на изменение размеров панели никак не реагирует. :(
Посоветуйте что-нибудь, замучался уже.
Да, и еще. Реализация с помощью пакетов не подходят.


 
Семен Сорокин ©   (2004-12-10 16:05) [1]

попробуй передвать Application.Handle + Screen.Handle (их подменять)
PS. посмотри еще сюда:
http://www.delphimaster.ru/articles/book/Chap09.pdf
PSS. Для отображения в "панели" существуют фрэймы (TFrame)


 
Bams   (2004-12-10 16:14) [2]


> попробуй передвать Application.Handle + Screen.Handle (их
> подменять)


Да вот вроде ж аппликейшн подствляю, и с TScreen тоже пробовал -
эффет тот-же.

procedure TPlugin.Load(AApp: TApplication; AParent: TWinControl);
begin
DLLApp := Application;
Application := AApp;


А с фреймами тоже пробовал пишет что "cant assign TFont to TFont" - куча ругательств выходит.

TFont-ы разны у Dll и приложения (адреса)


 
Bams   (2004-12-10 17:08) [3]

Так что будут какие идеи?



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

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

Наверх




Память: 0.47 MB
Время: 0.042 c
1-1102798587
Zahar
2004-12-11 23:56
2004.12.26
Вопрос о новых расширениях файлов в системе


3-1101812518
Eugene1501
2004-11-30 14:01
2004.12.26
Как удалить индекс dbf файла


14-1102491925
cyborg
2004-12-08 10:45
2004.12.26
Новость


14-1102064193
080D:07BBh
2004-12-03 11:56
2004.12.26
DB components


1-1102696534
Frozzen
2004-12-10 19:35
2004.12.26
Есть ли в делфи подобие memset C++