Du musst zuvor prüfen, ob der Wert nicht leer ist. Wenn du den markierst und etwas anderes eingibst, wird der Inhalt zunächst gelöscht, was bereits das OnChange-Ereignis auslöst.
So klappt's auch in der
IDE / im Debugger:
Delphi-Quellcode:
procedure TForm1.SpinEdit2Change(Sender: TObject);
begin
if SpinEdit2.Text <> '' then
begin
try
radius := SpinEdit2.Value;
except
radius := 0;
ShowMessage('ungültiger Wert');
end;
end;
end;
Dabei kannst du dir dann auch den try/except-block sparen.
Gruß + guten Rutsch