Wenn Du ein Maskedit verwenden möchtest könntest Du die EditMask mit "escapten" Zahlen für erste und vierte Stelle nehmen, so dass nur noch die zwei fehlenden Zahlen eingegeben werden können/müssen.
Delphi-Quellcode:
Const
C_MASK='\999\9;0;.';
var
Mask, PinStr:String;
Pin:Integer;
begin
Pin := Random(9000) + 1000;
PinStr := IntToStr(Pin);
if length(PinStr)=4 then
begin
Mask := C_MASK;
Mask[2] := PinStr[1];
Mask[6] := PinStr[4];
end;
MaskEdit1.Text := '';
MaskEdit1.EditMask := Mask;
end;