Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Déclarer une routine évènement par son nom Sam 15 Jan 2011 - 11:59 | |
| J'aimerais pouvoir déclarer une routine évènement par le nom de la routine sous forme de string, ou dans une expression string. Exemple: - Code:
-
label MonSousprogramme
subroutine MonSousprogramme
return
ON_EVENT N,"OnDragOver","MonSousprogramme"
Il y a une fonction en Delphi qui pourrait le faire, éventuellement de façon analogue à ceci: - Code:
-
procedure ForceMethod(myctrl: TControl; const MName: TString; const pRoutine: TPointer); stdcall; var MyMethod : TMethod; ctrl : TControl; begin ctrl := myctrl; MyMethod.Code := pRoutine; MyMethod.Data := nil; SetMethodProp(ctrl, MName, MyMethod); end;
Ceci permettrait d'un seul coup de gérer des évènements autres que ceux accessibles en Panoramic, comme par exemple OnDragOver etc, pouvu qu'il s'agisse d'une méthode publique pour cet objet. ET de plus, cela donnerait la possibilité à une DLL d'injecter un évènement à un objet Panoramic, comme l'évènement OnResize pour une form. Et afin de soutenir cette nouvelle fonction, on pourrait imaginer une fonction similaire à FONT_NAMES_LOAD qui chargerait la liste des méthodes publiques d'un objet dans une list, tlist, memo ou combo, de la manière suivante: - Code:
-
memo 10
METHOD_NAMES_LOAD 10,N
ce qui chargerait la liste des méthodes de l'objet N dans le mémo 10. | |
|