Fórum Filtrar caracter em dois campos ? #325776
21/07/2006
0
E ai Galera Tudo Blz
Bom estou querendo uma ajuda na seguinte situação:
No form eu tenho os campos Tel Fixo e Celular que estão mascarados e eu quero que um deles seja prenchido, para filtrar as mascaras dos campos eu fiz uma function assim:
[b:82ffb8609e]function FiltrarCaract(Source :String; Filter :TCharSet) :String;
var
Idx :Integer;
begin
for Idx := Length(Source) downto 1 do
if (Source[Idx] in Filter) then
Delete(Source, Idx, 1);
Result := Source;[/b:82ffb8609e]
E para chamar a function e uso o seguinte codigo:
[b:82ffb8609e]IF FiltrarCaract(DBCPF.Text, [´/´, ´ ´, ´.´, ´-´]) = ´´ Then
Begin
Showmessage (´Digite numero do CPF´);
DBCPF.SetFocus[/b:82ffb8609e]
Dai tudo beleza se o campo for igual a branco então da a mensagem e foca no campo
Só que eu não estou conseguindo usar esta function para filtrar dois campos juntos como o Tel fixo e tel celular quando eu deixo sem mascara e só eu colocar o codigo:
If Dbfixo = ´ ´ And
Dbcel = ´ ´ Then
Begin
Comando
end;
Então eu gostaria de fazer algo como o que esta acima usando a function filterCaract.
Éra isso ai galera Valeu e um abraço! 8)
Bom estou querendo uma ajuda na seguinte situação:
No form eu tenho os campos Tel Fixo e Celular que estão mascarados e eu quero que um deles seja prenchido, para filtrar as mascaras dos campos eu fiz uma function assim:
[b:82ffb8609e]function FiltrarCaract(Source :String; Filter :TCharSet) :String;
var
Idx :Integer;
begin
for Idx := Length(Source) downto 1 do
if (Source[Idx] in Filter) then
Delete(Source, Idx, 1);
Result := Source;[/b:82ffb8609e]
E para chamar a function e uso o seguinte codigo:
[b:82ffb8609e]IF FiltrarCaract(DBCPF.Text, [´/´, ´ ´, ´.´, ´-´]) = ´´ Then
Begin
Showmessage (´Digite numero do CPF´);
DBCPF.SetFocus[/b:82ffb8609e]
Dai tudo beleza se o campo for igual a branco então da a mensagem e foca no campo
Só que eu não estou conseguindo usar esta function para filtrar dois campos juntos como o Tel fixo e tel celular quando eu deixo sem mascara e só eu colocar o codigo:
If Dbfixo = ´ ´ And
Dbcel = ´ ´ Then
Begin
Comando
end;
Então eu gostaria de fazer algo como o que esta acima usando a function filterCaract.
Éra isso ai galera Valeu e um abraço! 8)
Alecsandro Moura
Curtir tópico
+ 0
Responder
Posts
25/07/2006
Micheus
eu quero que um deles seja prenchido
Significa que basta ter um preenchido para passar a diante? Então veja se seria isto:procedure Form1.Edit1Exit(Sender :TObject); begin function ValidaFone :boolean; Begin Result := True; If FiltrarCaract(Dbfixo.Text, [´ ´, ´.´, ´-´]) <> ´´ then Exit Else If FiltrarCaract(Dbcel.Text, [´ ´, ´.´, ´-´]) <> ´´ then Exit Else Result := False; End; Begin If Not ValidaFone Then Begin Showmessage (´Digite numero de telefone´); Dbfixo.SetFocus; End; End;
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)