Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.09;
Скачать: 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 вся ветка

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

Наверх




Память: 0.49 MB
Время: 0.059 c
3-27852
NeyroSpace
2002-11-19 17:41
2002.12.09
Помогите! Какие-то проблемы с IBTransaction.


1-28104
Damage
2002-11-26 22:35
2002.12.09
fsStayOnTop не работает?


3-27842
Сергей Б.
2002-11-20 12:21
2002.12.09
Обновление набора данных в DBGrid -- требуется помощь


4-28359
ULTRIX
2002-10-26 01:26
2002.12.09
Окна хендлы и эдиты


3-27893
robi
2002-11-21 18:14
2002.12.09
Контекстное меню в DBGride