DBGrid에서 Translate error. Value out of bounds 에러가 나는 경우입니다.
Field는 number타입이고 5자리인데 5자리 이상이 입력된 후에 DbGrid의 Column 에서 빠져나갈때
위와 같은 에러가 발생합니다.
onColExit이벤트에서 다음과 같이 코딩했는데 5자리 이상이 입력되면 아예 이벤트를 타지도 않더군요.
procedure TFrmARB_TCPAdmin.DBgTcpInfoColExit(Sender: TObject);
begin
case DBgTcpInfo.Selectedindex of
2 :
begin
if Length(DBgTcpInfo.Fields[2].AsString) > 5 then
begin
Showmessage('입력자리수를 초과했습니다.');
DBgTcpInfo.Fields[2].AsString := '';
DBgTcpInfo.SelectedIndex := 2;
end;
end;
end;
end;
제가 코딩을 잘못한것인지 아님 다른방법이 있는지 갈쳐주세요...
필드 에디터가 나옵니다.
거기에 필드들을 추가하시고 길이 제한을 하실 필드에 프로퍼티 중 size 를 정해 주시면
위에서 구현 하시려는 기능이 적용 됩니다. 즉, 입력 길이가 자동으로 제한 됩니다.