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

TMethod = record Code, Data: Pointer; end;   Найти похожие ветки 

← →
Matolch ©   (2002-11-26 21:21) [0]

Подскажите, кто знает, как можно получить через значения переменной типа

TMethod = record
Code, Data: Pointer;
end;

строчку "Button1Click", возможно ли это?


← →
Юрий Зотов ©   (2002-11-26 21:38) [1]

Если это published-метод, то можно:
TObject(Data).MethodName(Code)


← →
TTCustomDelphiMaster ©   (2002-11-26 21:44) [2]

Может такое решение подойдет
var
MyProc: TNotifyEvent;

...
MyProc := Button1Click;
ShowMessage(MethodName(@MyProc));
...


← →
Matolch ©   (2002-11-26 22:25) [3]

Спасибо, буду пробовать!


← →
Matolch ©   (2002-11-26 22:36) [4]


> Юрий Зотов ©

Работает, как раз, то что нужно !
Большое спасибо за совет !
Жаль, что далеко, пивка бы налил !

> TTCustomDelphiMaster ©

Спасибо за внимание, но это не совсем то, что надо. Зачем мне определять уже известное мне заранее (MyProc := Button1Click;) значение, ограничившись TNotEvnt. И тебе пивка !


← →
Matolch ©   (2002-11-26 22:40) [5]


> TTCustomDelphiMaster ©

Прошу прощения, это одно и то же. Пивка!


← →
Matolch ©   (2002-11-26 22:44) [6]

tkMethod:
begin
MethodC := GetMethodProp(Component, PropName);
MethodS := GetMethodProp(SomeObject, PropName);
if (MethodC.Code <> MethodS.Code) or (MethodC.Data <> MethodS.Data) then
begin
StrValueC := {TObject(MethodC.Data).}MethodName(MethodC.Code);
Add(" " + PropName + " := " + StrValueC + ";");
end;
end;


Если не ремить TObject(MethodC.Data), прекрасно работает.


← →
Юрий Зотов ©   (2002-11-27 00:14) [7]

Если ремить, то вызывается MethodName того объекта, которому принадлежит данный код. А если не ремить, то объекта, находящегося по адресу Data. Так что ничего странного.


← →
Matolch ©   (2002-11-27 16:17) [8]

Согл.


← →
Matolch ©   (2002-11-27 16:30) [9]

Мне лишь непонятно, почему не получается так:

StrValueC := Component.MethodName(MethodC.Code);


← →
Юрий Зотов ©   (2002-11-27 16:58) [10]

Потому что у редактируемого компонента нет такого метода. У него есть событие, на обработку которого данный метод назначен, но сам этот метод принадлежит другому объекту (обычно форме).


← →
Matolch ©   (2002-11-27 19:04) [11]

Точно. Все, ясно, я глуп и не обучен.

> Юрий Зотов © Спасибо!




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

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



Память: 0.47 MB
Время: 0.016 c
3-27879
Arkady
2002-11-21 13:17
2002.12.09
DBGrid


14-28235
Вадим
2002-11-17 15:12
2002.12.09
Чертовы соседи! Как с ними лучше бороться?


1-28112
DmitriyN
2002-11-27 17:15
2002.12.09
Как в окне MDIParent сделать аналог виндовой панели задач?


1-28038
Maxval
2002-11-30 11:21
2002.12.09
Как правильно вывести дату?


1-28117
mila
2002-11-28 16:09
2002.12.09
стоит ли апгрейдить?




   Наверх