Ouou, bitte stelle das nächste Mal deine Frage präziser! Es hat 15 Beiträge gebraucht, bis die eigentliche Frage klar war. Deine Codeschnipsel hatten nichts mit deinem Problem zu tun und waren eher irreführend. Einfach mal vor dem Fragestellen überlegen, was dein Ziel ist, und wie man das den anderen am besten verklickern kann
So, nun zu deinem Problem: es gibt verschiedene Ansätze, wie man das lösen kann:
1) Du verwendest, wie weiter oben erwähnt, entsprechende Komponenten, die eine Falscheingabe verhindern.
2) Du überprüfst selbst, ob eine Falscheingabe eingegeben wurde. Das kannst du während der Eingabe machen (und dort dann zB die Eingabe verhindern) oder bei einer Aktion (zB wenn der Benutzer den Addieren-Button klickt).
Ich hab mir mal was kurzes überlegt:
Delphi-Quellcode:
procedure TfrmMain.EditChange(Sender: TObject);
var
Temp: Double;
begin
with (Sender as TEdit) do
if TryStrToFloat(Text, Temp) then
begin
Text := Format('%f', [Temp]);
Font.Color := clBlack;
end else
Font.Color := clRed;
end;
Ist zwar noch nicht ganz komfortabel (Nachkommastellen machen Probleme), aber immerhin ein Ansatz