Was retested here with a default TAdvEdit on the form and all 3 sequences were tested:
begin
advedit1.FloatValue := 2;
FormatSettings.DecimalSeparator:=','; // AdvEdit.FloatValue=2
end;
begin
advedit1.FloatValue := 2;
FormatSettings.DecimalSeparator:='.'; // AdvEdit.FloatValue=2
end;
begin
advedit1.FloatValue := 2;
FormatSettings.DecimalSeparator:=','; // AdvEdit.FloatValue=2
FormatSettings.DecimalSeparator:='.'; // AdvEdit.FloatValue=2
end;
and in all cases, the value of the TAdvEdit remained 2.