E2148 Méthode dynamique ou gestionnaire de messages non autorisé ici (Delphi)
Remonter à Messages d'erreur et d'avertissement (Delphi)
Les méthodes dynamic et message ne peuvent pas être utilisées comme fonctions d'accès aux propriétés.
program Produce; type Base = class v : Integer; procedure SetV(x : Integer); dynamic; function GetV : Integer; message; property Velocity : Integer read GetV write v; property Value : Integer read v write SetV; end; procedure Base.SetV(x : Integer); begin v := x; end; function Base.GetV : Integer; begin GetV := v; end; begin end.
Les deux valeurs 'Velocity' et 'Value' ci-dessus sont en erreur puisqu'elles ont toutes les deux des fonctions incorrectes qui leur sont affectées.
program Solve; type Base = class v : Integer; procedure SetV(x : Integer); function GetV : Integer; property Velocity : Integer read GetV write v; property Value : Integer read v write SetV; end; procedure Base.SetV(x : Integer); begin v := x; end; function Base.GetV : Integer; begin GetV := v; end; begin end.
La solution utilisée dans cet exemple a été d'enlever les directives de compilation incriminées des déclarations de procédure ; ce ne sera peut-être la bonne solution pour votre problème. Vous devrez peut-être examiner attentivement la logique de votre programme pour déterminer comment améliorer la fourniture des fonctions d'accès à vos propriétés.