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

Как определить, есть ли у компонента заданная функция?   Найти похожие ветки 

 
BlackKing   (2003-11-11 12:39) [0]

В етом примере указано, как определить есть ли у компонента заданное свойство:

Uses TypInfo;

procedure TForm1.Button4Click(Sender: TObject);
var
P:Pointer;
begin
P:=GetPropInfo(ComboBox1.ClassInfo,"Enabled");
If P<>Nil then
ShowMessage("yes");
end;

А вот как определить, есть ли у компонента заданная функция или процедура, и как её запустить?

Спасибо.


 
Юрий Федоров ©   (2003-11-11 13:02) [1]

ТОлько для Published методов - MethodAddress


 
BlackKing   (2003-11-11 15:11) [2]

Спасибо, работает :о) но...

компонент создан на основе TComboBox, в вызываемой процедуре есть "Items.Clear", и в етом месте выдаёт ошибку "Access Violation at..."

procedure TForm1.Button4Click(Sender: TObject);
var
P:Pointer;
S:Procedure;
Begin
P:=ADComboBox1.MethodAddress("DelItems");
If P<>Nil then
Begin
S:=P;
S;
End;
end;

а : ADComboBox1.DelItems; - всё работает

каким образом можно заставить всё ето работать?



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

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



Память: 0.45 MB
Время: 0.022 c
8-66025
wHammer
2003-07-22 14:22
2003.11.20
Jpeg


14-66066
Vlad Oshin
2003-10-30 10:17
2003.11.20
А вы про синус...


1-65901
mc_duck
2003-11-08 15:37
2003.11.20
Наследник TComponent.


3-65706
ST_
2003-11-02 22:26
2003.11.20
CheckBox


1-65909
Alexious
2003-11-08 13:52
2003.11.20
Edit?




   Наверх