Movendo o foco para o próximo Edit quando o tamanho máximo de caracteres foi alcançado

 

A propriedade MaxLenght de um componente descendente de TCustomEdit (Edit, DBEdit, etc.) especifica o número máximo de caracteres que o usuário pode inserir no controle. Esta dica mostra como mover imediatamente para o próximo controle (seguindo a ordem do tab) quando o número máximo de caracteres for alcançado.

 

procedure TForm1.Edit1Change(Sender: TObject) ;

begin

  if Sender is TEdit then

    with Sender as TEdit do

      if MaxLength = GetTextLen then

        Self.SelectNext(TCustomEdit(Sender), True, True);

end;

 

O código anterior é do evento OnChange de um Edit chamado Edit1. A propriedade MaxLength é utilizada em aplicações que utilizam bancos de dados, onde o MaxLength de um DBEdit é o mesmo que a propriedade Size de um TField (para campos texto).