Setfocus

Delphi

29/10/2003

Salve pessoal

Estou fazendo um form para registro do meu programa ... Dai estou querendo enfeitar um pouquinho ... Quero fazer aquele efeito que quando se digita quatro caracteres no Edit ele pula para um proximo Edit.
Eu estava tentando assim:
No evento OnChange do primeiro Edit eu coloquei o seguinte código:

if Length(TEdit(Sender).Text) = 4 then TEdit(Sender)..... daqui para frente eu nao sei ...

Se alguem puder me ajudar.

Valewwwww


Marcelo Bh

Marcelo Bh

Curtidas 0

Respostas

Marcelo Saviski

Marcelo Saviski

29/10/2003

perform(WM_NEXTDLGCLT,0,0)

isso faz o foco ´pular´ para o outro edit


GOSTEI 0
Marcelo Bh

Marcelo Bh

29/10/2003

A dica que vc me deu ate funciona mas ... quando eu coloco o primeiro caractere ele ja pula para o proximo ... mas eu queria que pulasse quando eu digitasse 4 caracteres


GOSTEI 0
Marcelo Saviski

Marcelo Saviski

29/10/2003

não era para tirar o if que vc já tinha, essa era a parte:
´daqui para frente eu nao sei ... ´

fica assim:
if Length(TEdit(Sender).Text) = 4 then perform(WM_NEXTDLGCLT,0,0) ;



GOSTEI 0
Rômulo Barros

Rômulo Barros

29/10/2003

Edit1.tag := 0;
Edit2.Tag := 1;
Edit3.Tag := 2;
Edit4.Tag := 3;

Evento onchange do edit;
Begin
if(Length(TEdit(Sender).Text) = 4 )then
Case Tedit(Sender).Tag Do
0: Edit2.SetFocus;
1: Edit3.SetFocus;
2: Edit4.Setfoucs;
End;
End;

No evento Onclick dos 3 últimos últimos edits, indique para o evento onclick do primeiro edit....


GOSTEI 0
Marcelo Saviski

Marcelo Saviski

29/10/2003

Já que foi tocado no assunto, para que serve essa propriedade Tag?
pode fazer o que quiser com ela?


GOSTEI 0
Beppe

Beppe

29/10/2003

Ela tah ali de quebra-galho. Pode-se armazenar algum dado(Integer), ou usando typecast(Tag := Integer(TMemoryStream.Create)) até mais informação. Eu não costumo usar, mas ele pode ser bastante útil, tipo ter um número especifico para agrupar componentes relatados, etc...

Ataliba


GOSTEI 0
Marcelo Saviski

Marcelo Saviski

29/10/2003

Legal, bom saber, valew Ataliba


GOSTEI 0
POSTAR