LOSTFOCUS NUM FORM

FELIPEA 12/03/2005 09:56:22
#72532
Eu tenho um form todo personalizado ( grafico )
A ideia é fazer o form ficar todo cinza ao perder o foco, mas quando seto focus para um aplicativo qqer, não acontece nada! (*)

Qual é a rotina q devo usar para deixar o form todo cinza quando eu dar focus ao outro aplicativo

(*) Estou utilizando o LostFocus, e ainda por cima, quando clico num textbox ou num command, daí o form fica cinza

Tem como eu me livrar dessa dúvida?
THIAGO.CESAR 12/03/2005 11:17:01
#72540
Felipe, beleza?

Experimente no evento DeActivate...
FELIPEA 12/03/2005 18:24:12
#72611
?Desculpe minha ignorancia, mas como usa isso?
CLINS 12/03/2005 18:30:33
#72613
Entendi o que ele quis dizer.
Ao invés de utilizar o evento LostFocus do form utilize o evento DEATIVATE.


FELIPEA 12/03/2005 22:07:54
#72673
O DEACTIVATE n~~ao funciona, estou fazendo o form ficar vermelho ao perder o foco, mas nada!
FERDN4NDO 13/03/2005 14:58:20
#72763
Resposta escolhida
vc esta usando lostfocus e setfocus?

Talvez tivesse de colocar o comando em cada um dos objetos de seu form!

Tipow: If command1.setfocus Then
form1.backcolor = vbred
End if

é dificil, mas acho q essa funciona!
CAPITAO.GARCIA 13/03/2005 15:06:32
#72769
FelipeA, para isso vc precisa chamar o Form asssim:
[c]
Form.show
[c]

Com isso vc pode usar o Activate ao ganhar o foco, e o Deactivate ao perder o foco
FELIPEA 13/03/2005 15:09:50
#72771
vou verificar tudo depois, pois estou em outra casa, e não tem visual baisc
THIAGO.CESAR 13/03/2005 18:41:53
#72797
O problema aí é que o evento Deactivate só dispara se perder o foco para outro formulário do projeto. Se você abrir uma janela externa qualquer ele não executa os comandos, mesmo ficando em segundo plano... Nesse caso vc teria também que descobrir se seu projeto é a janela ativa do momento...

Parada dura hein... eu, na minha ignorà¢ncia, [S54] só consigo imaginar um timer com alguma API verificando se seu programa está ativo ou inativo, mas pode deixar o programa um pouco pesado...
Tópico encerrado , respostas não são mais permitidas