limpando o caption do label no delphi
bom dia
tenho uma tela de login e no lugar de um showmessage para exibir mensagens de usuário e senha inválidos e campos vazios eu gostaria de colocar em um label (estou usando o label 3, 4 e 5 para exibir )como segue o código
procedure TFrmLogin.BitBtnEntrarClick(Sender: TObject);
begin
QueryLoginUser.Open;
if ((QueryLoginUser.Locate('login', EditUsuario.Text, [])) and (QueryLoginUser.Locate('senha', EditSenha.Text, []))) then
begin
GuardaLogin:= EditUsuario.Text;
QueryUserLogado.Insert;
QueryUserLogadoCOD_USUARIO.Value:= QueryLoginUserCODIGO.Value;
QueryUserLogadoSUCESSO.Value:= 'SIM';
QueryUserLogado.Post;
QueryUserLogado.Close();
ModalResult:= mrOk;
end
else // testa se os campos estão vazios
if (EditUsuario.Text = '') or (EditSenha.Text= '') then
begin
Label4.Caption:= 'Campo de usuário ou senha vazio !'; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<
EditUsuario.SetFocus;
Inc(tentativasVazio); //acumula valor inteiro
end
else // testa se o conteúdo dos campos usuário e senha são válidos
begin
inc (tentativasValidas); //acumula um valor inteiro
Label3.Caption:='Usuario ou senha inválido!'; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
GuardaLogin:= Edit1.Text;
QueryUserLogado.Insert;
QueryUserLogadoSUCESSO.Value:= 'NÃO';
QueryUserLogadoCOD_USUARIO.Value:= QueryLoginUserCODIGO.Value;
QueryUserLogado.Post;
EditSenha.Clear;
EditUsuario.SetFocus;
end;
// as duas variáveis acumulam um valor inteiro até 3
if (tentativasVazio = 3)or(tentativasValidas = 3) then
begin
label5 :='Tentativas de login inválidas. Essa aplicação será encerrada!'; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Application.Terminate;
end;
end;
o detalhe é que preciso apagar a mensagem quando o setfocus fizer o seu papel e enviar o foco para o editUsuario
tenho uma tela de login e no lugar de um showmessage para exibir mensagens de usuário e senha inválidos e campos vazios eu gostaria de colocar em um label (estou usando o label 3, 4 e 5 para exibir )como segue o código
procedure TFrmLogin.BitBtnEntrarClick(Sender: TObject);
begin
QueryLoginUser.Open;
if ((QueryLoginUser.Locate('login', EditUsuario.Text, [])) and (QueryLoginUser.Locate('senha', EditSenha.Text, []))) then
begin
GuardaLogin:= EditUsuario.Text;
QueryUserLogado.Insert;
QueryUserLogadoCOD_USUARIO.Value:= QueryLoginUserCODIGO.Value;
QueryUserLogadoSUCESSO.Value:= 'SIM';
QueryUserLogado.Post;
QueryUserLogado.Close();
ModalResult:= mrOk;
end
else // testa se os campos estão vazios
if (EditUsuario.Text = '') or (EditSenha.Text= '') then
begin
Label4.Caption:= 'Campo de usuário ou senha vazio !'; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<
EditUsuario.SetFocus;
Inc(tentativasVazio); //acumula valor inteiro
end
else // testa se o conteúdo dos campos usuário e senha são válidos
begin
inc (tentativasValidas); //acumula um valor inteiro
Label3.Caption:='Usuario ou senha inválido!'; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
GuardaLogin:= Edit1.Text;
QueryUserLogado.Insert;
QueryUserLogadoSUCESSO.Value:= 'NÃO';
QueryUserLogadoCOD_USUARIO.Value:= QueryLoginUserCODIGO.Value;
QueryUserLogado.Post;
EditSenha.Clear;
EditUsuario.SetFocus;
end;
// as duas variáveis acumulam um valor inteiro até 3
if (tentativasVazio = 3)or(tentativasValidas = 3) then
begin
label5 :='Tentativas de login inválidas. Essa aplicação será encerrada!'; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Application.Terminate;
end;
end;
o detalhe é que preciso apagar a mensagem quando o setfocus fizer o seu papel e enviar o foco para o editUsuario
Emanuel Gonçalves
Curtidas 0
Respostas
Maycon Felippe
25/09/2015
Bom dia.
Você gostaria de colocar um label para exibir a msg do showmessage .
Tipo retirar o showmessage e colocar o label no lugar dele é isso ?
Você gostaria de colocar um label para exibir a msg do showmessage .
Tipo retirar o showmessage e colocar o label no lugar dele é isso ?
GOSTEI 0
Emanuel Gonçalves
25/09/2015
Bom dia.
Você gostaria de colocar um label para exibir a msg do showmessage .
Tipo retirar o showmessage e colocar o label no lugar dele é isso ?
Você gostaria de colocar um label para exibir a msg do showmessage .
Tipo retirar o showmessage e colocar o label no lugar dele é isso ?
isso mesmo
já tenho 3 label´s no form e q ideia é essa, quando for digitado usuário ou senha inválidos o respectivo label mostrar a mensagem para em seguida o editUsuario receber o setfocus e o label apagar a mensagem, até pq se o usuário acertar na segunda tentativa é legal q não tenha mensagem no form.
GOSTEI 0
Maycon Felippe
25/09/2015
Mas o codigo que você postou não funciona assim exibindo pro um label ?
GOSTEI 0
Emanuel Gonçalves
25/09/2015
Mas o codigo que você postou não funciona assim exibindo pro um label ?
Funciona sim, o detalhe está na imagem logo abaixo, observe que na tela login já aparece a mensagem (Usuário ou senha inválido) isso pq já foi feito uma tentativa de login e a senha estava errada, o nome VITOR no campo usuários e a SENHA presente no campo senha já estão corretos partindo para a segunda tentativa (nesse caso vai da certo)
[img]http://arquivo.devmedia.com.br/forum/imagem/447550-20150925-140722.jpg[/img]
eu quero que a mensagem desapareça ao identificar q estão corretos usuário e senha antes de fazer o teste no botão entrar
GOSTEI 0
Maycon Felippe
25/09/2015
Esta dizendo que na sua segunda tentativa ele mesmo tando certo ele exibe a msg.. Correto?
se for isso você precisa colocar uma outra condição pra verificar antes de chegar na msg
tipo.. if segunda tentativa = OK then
aqui você já chama o form..
Seria isso ?
se for isso você precisa colocar uma outra condição pra verificar antes de chegar na msg
tipo.. if segunda tentativa = OK then
aqui você já chama o form..
Seria isso ?
GOSTEI 0
Emanuel Gonçalves
25/09/2015
Esta dizendo que na sua segunda tentativa ele mesmo tando certo ele exibe a msg.. Correto?
se for isso você precisa colocar uma outra condição pra verificar antes de chegar na msg
tipo.. if segunda tentativa = OK then
aqui você já chama o form..
Seria isso ?
se for isso você precisa colocar uma outra condição pra verificar antes de chegar na msg
tipo.. if segunda tentativa = OK then
aqui você já chama o form..
Seria isso ?
vou tentar
GOSTEI 0