Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.11;
Скачать: CL | DM;

Вниз

GetPropInfo...   Найти похожие ветки 

 
MetalFan ©   (2004-06-21 12:38) [0]

Доброе время дня, Мастера!
есть код, работающий через сабж, позволяющий учтановить св-во OnKeyPress у любого контрола...
function SetMyKeyPress(aControl: TObject): boolean;
var
 lPropInfo: PPropInfo;
 lMethod : TMethod;
begin
 result := assigned(aControl);
 if result then
 begin
   lPropInfo := GetPropInfo(aControl, "OnKeyPress");
   result := assigned(lPropInfo) and (lPropInfo^.PropType^^.Kind = tkMethod);
   if result then
   begin
   //ЗДЕСЬ НИЧЕГО НЕ МЕНЯТЬ!
     lMethod.Data := aControl;
     iltLiters: lMethod.Code := @OnMyKeyPress;
     SetMethodProp(aControl, lPropInfo, lMethod);
   end;
 end;
end;
...
procedure OnMyKeyPress(ASelf, ASender: TObject;var Key: Char);
begin
...
end;

а вопрос следующий: как мне запомнить (если он был назначен) предыдущий обработчик, и вызывать его в случае необходимости?
как я подозреваю, надо копать в сторону GetMethodProp...
жду совета)


 
MetalFan ©   (2004-06-21 13:35) [1]

все... хм) всем спасибо!
вроде разобрался!
кому интересно, пишите - выложу, что нашел!


 
GrayFace ©   (2004-06-22 19:04) [2]

Клади.


 
MetalFan ©   (2004-06-24 19:04) [3]


> Клади.

что-то много у меня кода получилось... не получится в форум выложить)
хотя можно было и по-проще сделать...



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

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

Наверх




Память: 0.47 MB
Время: 0.034 c
1-1087819075
tamagavk
2004-06-21 15:57
2004.07.11
Cохранение StringGrid


1-1088523699
dimon_programmer
2004-06-29 19:41
2004.07.11
Извлечь DateTime из FTLastAcsessed


3-1087045844
Karlson
2004-06-12 17:10
2004.07.11
Фильтрация в union all


14-1087718052
Anatoly Podgoretsky
2004-06-20 11:54
2004.07.11
С днем рождения 20.06.2004


14-1087794124
HH.EXE
2004-06-21 09:02
2004.07.11
Не открываются файлы CHM