Вниз
Скачать: CL | DM;

Создание TButton из DLL   Найти похожие ветки 

← →
Alkmas   (2004-05-05 13:38) [0]

Здравствуйте все!

Делаю в DLL следующее:
 Butt := TButton.Create(Application.MainForm);
 Butt.Parent := Application.MainForm;//здесь ругается

Подскажите пожалуйста.


← →
clickmaker ©   (2004-05-05 13:44) [1]

Передавай в DLL указатель на Application или хотя бы на MainForm


← →
Goida ©   (2004-05-05 13:45) [2]

Дело в том, что Application в DLL отличается от того, который у тебя в приложении. Нужно в DLL передать Application из приложения и тогда ве заработает. Но перед освобождением DLL нужно восстановить исходный Application.


← →
Alkmas   (2004-05-05 13:48) [3]

В DLL передается Application.


← →
clickmaker ©   (2004-05-05 13:49) [4]


> Alkmas   (05.05.04 13:48) [3]

А как ругается?


← →
Alkmas   (2004-05-05 13:53) [5]

Пишет следующее:
"Cannot Assign a TFont to a TFont"


← →
Goida ©   (2004-05-05 13:55) [6]

Нужно в DLL  сделать следующее (прямо так и написать):
var
   DLLApp: TApplication;
procedure InitDLL(MyApp: integer);
begin
   DLLApp := Application;
   Application := TApplication(MyApp);
end;

procedure DoneDLL;
begin
   Application := DLLApp;
end;
Из программы запускаешь:
InitDLL(integer(Application));
Все будет работать.


← →
Alkmas   (2004-05-05 13:58) [7]

У меня в программе сделано так:

var
 OldApp: TApplication;

procedure Init(App: TApplication);
begin
 OldApp := Application;
 Application := App;
end;

procedure Final;
begin
 if Assigned(OldApp) then Application := OldApp;
end;


← →
clickmaker ©   (2004-05-05 14:01) [8]

Button.ParentFont := false


← →
Goida ©   (2004-05-05 14:03) [9]

Попробуй передавать указатель на форму....


← →
Alkmas   (2004-05-05 14:05) [10]

Спасибо получилось !!!

Только не понятно почему при этом не работает

Button.ParentFont := true;


← →
Goida ©   (2004-05-05 14:06) [11]

За > Goida ©   (05.05.04 14:03) [9] извиняюсь... О другом подумал :)


← →
Goida ©   (2004-05-05 14:08) [12]

Т.е. то и хотел сказать, а вот во второй раз не о том подумал...
> Goida ©   (05.05.04 14:03) [9]


> Goida ©   (05.05.04 14:06) [11]

Блин, бывает же такое... :)



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.023 c
1-1083638124
Kair
2004-05-04 06:35
2004.05.23
Alt + F4


4-1080663058
Дмитрий
2004-03-30 20:10
2004.05.23
Как при помощи WinAPI заморозить значение в памяти игры?


8-1078606910
Yuri Btr
2004-03-07 00:01
2004.05.23
Проблема с установкой ф-ии через BASS_ChannelSetSync


11-1068856196
Ciber SLasH
2003-11-15 03:29
2004.05.23
Подмена модулей


1-1083964926
MAXHO-2
2004-05-08 01:22
2004.05.23
Как перехватить закрытие главного окна?




   Наверх