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

Вниз

Создание элемента управления из dll   Найти похожие ветки 

 
Alexey Morceleb   (2004-08-03 14:25) [0]

Проблема: нужно, чтобы из функции, находящейся в dll можно было создать на форме приложения кнопку, список,и т.д. и управлять ими произвольно. Спасибо!


 
Sergey Kaminski ©   (2004-08-03 15:31) [1]

Конкретно - в чем проблема?


 
REA ©   (2004-08-03 16:28) [2]

Это несколько проблематично (но наверно можно) - лучше использовать для этой цели packages.


 
Sergey Kaminski ©   (2004-08-03 16:31) [3]


function DLL_func (AForm: TForm): TButton;
begin
 Result := TButton.Create (AForm);
 Result.Parent := AForm;
 Result.Left := 10;
 Result.Top := 20;
 Result.OnClick := DLL_OnBtnClick;
 Result.Show;
end;


Уточни проблему или это подходит?


 
y-soft ©   (2004-08-03 17:06) [4]

>Sergey Kaminski ©   (03.08.04 16:31) [3]

Это опасный способ - приведет к неприятностям, если Dll и вызывающая программа скомпилированы в разных версиях Delphi


 
y-soft ©   (2004-08-03 17:27) [5]

Если уж так и делать, то проводя всю обработку на уровне класса только внутри Dll. При инициализации передавать не экземпляр родителя, а хендл его окна, и вызывать конструктор не Create, а CreateParented. Доступ к методам и свойствам экспортируемого контрола только через функции-обертки или/и посылку оконных сообщений (пример: реализация на Delphi работы с ActiveX)


 
Sergey Kaminski ©   (2004-08-03 17:38) [6]


Это опасный способ - приведет к неприятностям, если Dll и вызывающая программа скомпилированы в разных версиях Delphi


Согласен. Это приведет к неприятностям и во многих других случаях.



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

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

Наверх




Память: 0.48 MB
Время: 0.037 c
3-1090481956
serg128
2004-07-22 11:39
2004.08.15
Как в вычислимом (Calculated) поле задать маску отображения чисел


1-1091429682
TUser
2004-08-02 10:54
2004.08.15
TScrollBox


1-1091124874
GuAV
2004-07-29 22:14
2004.08.15
MenuItem.ShortCut


1-1091221698
Ivanov
2004-07-31 01:08
2004.08.15
Как сделать"вкладку"


14-1091209922
Кириешки
2004-07-30 21:52
2004.08.15
Вот самая транспанентная форма.