[XE] Variable et Class Helper
Bonjour,
Je rencontre un petit soucis avec l'utilisation des class Helper avec les variables
Ex :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
TEditClassHelper = class Helper for TEdit
Class Var
FOldValue : String;
private
procedure FSetOldValue(AValue : String);
function FGetOldValue : String;
published
function IsDifferent : Boolean;
property OldValue : String read FGetOldValue write FSetOldValue;
end;
Class function TEditClassHelper.FGetOldValue: String;
begin
Result := FOldValue;
end;
Class procedure TEditClassHelper.FSetOldValue(AValue: String);
begin
FOldValue:= AValue;
Self.Text := AValue;
end;
function TEditClassHelper.IsDifferent: Boolean;
begin
Result := trim(Self.Text) <> trim(FOldValue);
end; |
Le soucis se trouve quand j'appelle FoldValue car la valeur est toujours la même quelques soit le composant TEdit.
Code:
1 2 3 4 5 6
|
Edit1.OldValue := 'Toto';
Edit2.Oldvalue := 'Titi';
ShowMessage(Edit1.Text + ' - ' + Edit1.OldValue); // Toto - Titi
Showmessage(Edit2.Text + ' - ' + Edit2.OldValue); // Titi - Titi |
En fait FOldValue prend la valeur du dernier TEdit.
Et la je suis perdu ^^
Quelqu'un a une idée du soucis ?
Merci