Mascara de Entrada - Delphi
Boa noite, gostaria de saber como verificar campo vazio (telefone), num campo com máscara de entrada definida pelo adotable, field editor, na propriedade editmask
Daniel
Curtidas 0
Respostas
Raimundo Pereira
30/10/2015
Implemente - Em sua rotina
var cont:string;
begin
cont:='';
cont:=MaskEdit1.Text;
cont:=StringReplace(cont,'(','', [rfReplaceAll, rfIgnoreCase]);
cont:=StringReplace(cont,')','', [rfReplaceAll, rfIgnoreCase]);
cont:=StringReplace(cont,'-','', [rfReplaceAll, rfIgnoreCase]);
cont:=StringReplace(cont,' ','', [rfReplaceAll, rfIgnoreCase]);
if cont='' then
begin
showmessage('Verifique o telefone');
end
else
begin
showmessage('Validado');
end;
end;
var cont:string;
begin
cont:='';
cont:=MaskEdit1.Text;
cont:=StringReplace(cont,'(','', [rfReplaceAll, rfIgnoreCase]);
cont:=StringReplace(cont,')','', [rfReplaceAll, rfIgnoreCase]);
cont:=StringReplace(cont,'-','', [rfReplaceAll, rfIgnoreCase]);
cont:=StringReplace(cont,' ','', [rfReplaceAll, rfIgnoreCase]);
if cont='' then
begin
showmessage('Verifique o telefone');
end
else
begin
showmessage('Validado');
end;
end;
GOSTEI 0
Daniel
30/10/2015
opa, obrigado, já já irei testar, sendo que eu uso "DbEdit", e não EditMask, pode ser adaptada para esta rotina sem problemas?
GOSTEI 0
Raimundo Pereira
30/10/2015
Pode Sim
GOSTEI 0
Daniel
30/10/2015
Cara, ainda está passando pelo meu if e salvando com o campo vazio...
var
mascara string;
begin
mascara := '';
mascara := DBEdtTelefonePrincipal.Text;
mascara:=StringReplace(mascara,'(','', [rfReplaceAll, rfIgnoreCase]);
mascara:=StringReplace(mascara,')','', [rfReplaceAll, rfIgnoreCase]);
mascara:=StringReplace(mascara,'-','', [rfReplaceAll, rfIgnoreCase]);
mascara:=StringReplace(mascara,' ','', [rfReplaceAll, rfIgnoreCase]);
if DBCBPeriodoDeReceb.Text = '' then
begin
ShowMessage ('Preencha o campo periodo de recebimento do funcionário');
cont := 1;
DBCBperiodoDeReceb.SetFocus;
end else
if mascara='' then
begin
showmessage('Verifique o telefone');
end else
if (DBEdtTelefone2.Text = '') and (DBEdtTelefonePrincipal.Text <> '') then
begin
Dmdados.QFuncionarios.FieldByName('Telefone2').Value := 'S/INFORMACAO';
end else
if (DBEdtCelular.Text = '') and (DBEdtTelefonePrincipal.Text <> '') then
begin
DmDados.QFuncionarios.FieldByName('Celular').Value := '000000000';
end;
GOSTEI 0
Raimundo Pereira
30/10/2015
mascara string;
begin
mascara := '';
mascara := DBEdtTelefonePrincipal.Text;
mascara:=StringReplace(mascara,'(','', [rfReplaceAll, rfIgnoreCase]);
mascara:=StringReplace(mascara,')','', [rfReplaceAll, rfIgnoreCase]);
mascara:=StringReplace(mascara,'-','', [rfReplaceAll, rfIgnoreCase]);
mascara:=StringReplace(mascara,' ','', [rfReplaceAll, rfIgnoreCase]);
Se o processo acima preenche e prepara a mascara então seu if deve ser sobre a mascara
//if DBCBPeriodoDeReceb.Text = '' then
assim:
if mascara ='' then
Tenta ai
begin
mascara := '';
mascara := DBEdtTelefonePrincipal.Text;
mascara:=StringReplace(mascara,'(','', [rfReplaceAll, rfIgnoreCase]);
mascara:=StringReplace(mascara,')','', [rfReplaceAll, rfIgnoreCase]);
mascara:=StringReplace(mascara,'-','', [rfReplaceAll, rfIgnoreCase]);
mascara:=StringReplace(mascara,' ','', [rfReplaceAll, rfIgnoreCase]);
Se o processo acima preenche e prepara a mascara então seu if deve ser sobre a mascara
//if DBCBPeriodoDeReceb.Text = '' then
assim:
if mascara ='' then
Tenta ai
GOSTEI 0