Вниз
Скачать: 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.016 c
14-66106
Романов Р.В.
2003-10-29 09:32
2003.11.20
Есть идея, нужны люди...


3-65792
Shnaider
2003-10-30 07:52
2003.11.20
Контакты Outlook


3-65710
Bura
2003-11-02 22:41
2003.11.20
Долго загружается InterBase


14-66100
servs
2003-10-28 14:47
2003.11.20
чисто академическая задача по алгоритмам


3-65764
IGORYOK
2003-10-30 19:20
2003.11.20
Про редактирования ячеек




   Наверх