USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Lost Focus
Wagner
SOROCABA
SP - BRASIL
ENUNCIADA !
Postada em 14/05/2004 12:27 hs            
Olá amigos...
 
Tenho um form com vários textbox. Uso a validação do dado digitado no LostFocus do controle.
Porém, se o usuário abrir o form e depois clicar em Cancelar (Unload), o sistema vai dar a msg de erro pq o textbox que tinha o foco não foi preenchido.
Tem alguma forma de contornar ou não acontecer isso quando o controle nao for preenchido e eu clicar em cancelar?
 
Grato
 
Wagner R.
   
Waldirjr
POÇOS DE CALDAS
MG - BRASIL
ENUNCIADA !
Postada em 14/05/2004 12:53 hs            
Em meus Progs. eu uso a Validacao dos Dados no Evento Validate, que ocorre antes do LostFocus e permite o cancelamento da saida do foco no objeto atual ate que seja verdadeira a condicao.
Mas um msg de erro(se naum foi feito por vc via programacao) eh sempre um erro a ser corrigido. Vc pode, por exemplo deixar o usuario passar o Foco para outro objeto quando for deixado em branco e Verificar se esta em branco na hora de gravar no banco de dados, fazendo a validacao apenas quando for digitado algo.
 
qualquer duvida Post
 
Te +
   
Wagner
SOROCABA
SP - BRASIL
ENUNCIADA !
Postada em 14/05/2004 13:51 hs            
Waldir,
A questão é que se o usuário entra no form por engano, qdo ele clicar em Cancelar o objeto que perder o foco vai gerar a msg de erro que eu criei, tipo "Data Inválida" e o usuário terá que clicar novamente no Cancelar para sair do Form.
O que eu queria era alguma rotina para anular o LostFocus caso o usuário tenha clicado no botao Cancelar.
 
Tem alguma vantagem especifica de se usar o Validade?
 
Grato
Wagner R.
 
   
Waldirjr
POÇOS DE CALDAS
MG - BRASIL
ENUNCIADA !
Postada em 14/05/2004 14:26 hs            
Wagner,
Vc pode fazer uma critica no Evento Form_QueryUnload do seu Form.
Quanto a Vantagens do Validate em relacao ao LostFocus, vou citar a que eu acho a principal:
 - Num Form coloque 2 Campos(TextBox ou MaskEditBox) para a entrada de datas.
 - Faca Critica de datas nos 2 no evento LostFocus
como no LostFocus naum ha um Cancel vc teria de fazer text1.Setfocus para que ele continue no text1 caso nao seja uma data valida, naum eh?
 - Teste
 
- Agora faca a mesma critica no Validate e apague o LostFocus
No case de nao ser uma data valida coloque:
   Cancel = True
   Exit Sub
- Teste
 
Vc vai ver que no Primeiro caso, aparecera a mensagem de erro no Text1, mas o foco passara para o Text2. Como ha o Text1.SetFocus, o evento LostFocus do Text2 sera acionado, aparecendo a Mensagem de erro e passando o foco para o Text1, entrando assim num "Loop Infinito".
 
No caso do Validate, ao Cancelar com o comando Cancel = True o Foco Continua no Text1, naum acionando nenhuma Sub de outro objeto.
 
 
 

________________________

Té +

Que NIMB role bons Dados! Emoções

   
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página