Сделал небольшой пример использования TPanel из Dll. При этом Dll может быть собрано как в Delphi так и в Lazarus, то же самое и с приложением. URL:
http://narod.ru/disk/24878504000/TPanel_in_Dll(Delphi_and_Lazarus(Win32)).7z.html.
В Lazarus DLL подключены необходимые пакеты к DLL (LCL и FCL).
Пример Win32 зависимый.
С чем не разбирался, но за комментарии буду благодарен (это можно сделать простой передачей размеров формы перед отображением, но хотелось бы какойнибудь системной функцией делать это автоматически, а не руками при каждом изменении размера главной формы):
1. Dll_Delphi + HostApp_Delphi - панель из *.dll на всю область отображения растягивается, а вот в Dll_Delphi + HostApp_Lazarus панель не растягивается на всю область просмотра а отображается с размерами с которыми она отображалась на форме из *.dll.
2. Dll_Lazarus + HostApp_Delphi и Dll_Lazarus + HostApp_Lazarus панель не растягивается на всю область просмотра а отображается с размерами с которыми она отображалась на форме из *.dll.
Я использую этот пример для запаковки визуальной библиотеки для Delphi (для адаптации библиотеки под Lazarus там много переписывать нужно) в *.dll и её бесшовной интеграции в Lazarus.
Собирал в: Lazarus 0.9.29 / FPC 2.5.1 и Delphi 2010.