InvokeMethod (Instance)
De Wiki1000
(Différences entre les versions)
(Une révision intermédiaire par un utilisateur est masquée) | |||
Ligne 18 : | Ligne 18 : | ||
<source lang='delphi'> | <source lang='delphi'> | ||
− | + | Procedure MyClass.InvokeMe(p1:TitObject; p2:Integer; p3:Boolean); | |
begin | begin | ||
− | if p3 then ShowMessage(Format('%s %d',[p1,p2])) else ShowMessage('false'); | + | if p3 then ShowMessage(Format('%s %d',[p1.Caption,p2])) else ShowMessage('false'); |
end; | end; | ||
− | Procedure TestInvokeMethod; | + | Procedure MyClass.TestInvokeMethod; |
begin | begin | ||
− | InvokeMethod('InvokeMe',[ | + | Caption := 'coucou'; |
+ | InvokeMethod('InvokeMe',[self,100,true]); | ||
end; | end; | ||
</source> | </source> |
Version actuelle en date du 19 mars 2013 à 11:28
function InvokeMethod(const iMethodName:string; iArgs:Variants):Variant;
Cette fonction permet d'exécuter dynamiquement une méthode de l'objet.
Result | La valeur de résultat de la méthode. |
iMethodName | Le nom de la méthode a exécuter |
iArgs | Un tableau de variant contenant les paramètres de la méthode. |
Exemple
Procedure MyClass.InvokeMe(p1:TitObject; p2:Integer; p3:Boolean); begin if p3 then ShowMessage(Format('%s %d',[p1.Caption,p2])) else ShowMessage('false'); end; Procedure MyClass.TestInvokeMethod; begin Caption := 'coucou'; InvokeMethod('InvokeMe',[self,100,true]); end;
Voir aussi