Könntest das nicht in einer Klasse realisieren bei der du dem Setter sagst, dass er nur Werte auf den eigentlichen IntWert schreiben darf, der wirklich im Intervall liegt, wie du es haben willst?
Hab das mal nur schematisch programmiert, Quelltext wurde nicht konntrolliert, nur das System soll mal dargestellt werden
Delphi-Quellcode:
type TMyInt = class
iWert: integer;
private
procedure SetiWert(Wert :integer);
function GetiWert: integer;
public
property Wert: integer read GetiWert write SetiWert;
end;
...
procedure TMyInt.SetiWert(Wert: Integer);
begin
if Wert in [1..8] then
begin
iWert:= Wert;
end
else
begin
iWert := 0;
end;
end;
function TMyInt.GetiWert;
begin
result := iWert;
end;
Vieleicht hilft dir das ja