Bonjour,
La première déclaration est une méthode de la classe "
TForm1". Pour faire simple, je dirai qu'elle va travailler quasi uniquement avec cette classe. D'ailleurs sa déclaration "normale" serait plutot :
procedure Calculer(Sender : TObject);
Cette méthode est liée à la classe "
TForm1". Dés que vous allez créer une nouvelle classe dérivée de "
TForm1" cette dernière héritera "naturellement" de la méthode "
Calculer" (i.e si j'écris ceci :
1 2 3 4
|
Type
TMafenetre : Class(TForm1)
end; |
J'aurai automatiquement accés à la méthode "calculer" de cette façon :
1 2 3 4 5 6 7 8 9 10
|
procedure TMafenêtre.Faituntruc(sender :Tobject);
begin
with Mafennêtre do
begin
...
Calculer;
...
end;
end; |
La seconde déclaration est générale et plus restrictive! Plus générale parce qu'elle n'est pas liée à l'emploi d'un objet particulier, elle peut travailler de façon autonome et donc réaliser tout traitement de votre choix même si celà n'a aucun rapport avec votre objet "
TForm1".
Plus restrictive en effet, vos méthodes ne pourront l'utiliser qu'à la condition suivante:
Elles doivent se trouver impérativement dans la même unité. De plus, même si vous utilisez cette unité au travers d'un autre module de votre programme (Inscription à la clause Uses) vous ne pourrez pas faire appel directement à cette méthode. Si je souhaite avoir accés à cette méthode depuis un autre module, je dois la déclarer dans la section publique.
Cordialement,
Hauwke
Partager