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

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Verificar se o Form está com o foco
rlinop
PORTO ALEGRE
RS - BRASIL
ENUNCIADA !
Postada em 12/11/2004 17:45 hs            
Olá Galera.. Tipo eu gostaria de saber como é que eu faço pra verificar quando o meu formulário está minimizado ou sem o foco???? Tipo eu quero que quando o meu formulário receber o foco ou for restaurado ele faça um evento ... Vces saberiam me dizer????
Agradecido..
Rafael Portal
   
THECRAZY
Pontos: 2843
BRASÍLIA
DF - BRASIL
ENUNCIADA !
Postada em 12/11/2004 18:36 hs            
Olá !!
Existe o Evento Activate
 
Private Sub Form_Activate()
         MSgbox "o Formulário " & Me.name & " Acabou de Receber foco "
End Sub
 
Este evento é executado toda vez que o form recebe o foco !!!
   
Sandro
não registrado
Postada em 12/11/2004 22:46 hs   
Existe outra opção, o formulário possui os eventos GotFocus e Resize, no GotFocus você é notificado e pode trabalhar a questão do foco nele. Caso você deseje verificar o foco de um formulário a partir de outro lugar do programa, use Screen.ActiveForm que te dá a referência ao formulário em foco de sua aplicação, a partir dele você pode pesquisar o nome (screen.activeform.name) e até mesmo saber qual dos controles dele está em foco (screen.activeform.activecontrol). Já o evento Resize, você pode verificar se a propriedade WindowState dele é vbMinimized, vbNormal ou vbMaximized.
 
Um Abraço,
Sandro.
     
rlinop
PORTO ALEGRE
RS - BRASIL
ENUNCIADA !
Postada em 16/11/2004 15:48 hs            
Olá Sandro... tipo o meu caso é o primeiro em que tu faMaxe que podemos fazer a verificação de outro lugar do programa... mas eu não entendi muito bem... e não consegui fazer funcionar... vc poderia me explicar melhor?????
tipo:
 
 
if OutroFormularioEstaComOFoco = true then
        bla bla bla
end if
 
 
Agradecido,
Rafael Portal
   
Sandro
não registrado
ENUNCIADA !
Postada em 17/11/2004 00:01 hs   
Olá, Rafael,
 
A idéia é a seguinte o objeto Screen, possui uma referência para o formulário em foco e, dentro deste, ao controle em foco. Então, se você quiser saber qual formulário está em foco, basta consultar Screen.ActiveForm.Name e saberá o nome do formulário em foco atualmente. Da mesma forma se você quiser saber o nome do controle em foco no formulário atual, use Screen.ActiveForm.ActiveControl.Name. Então, você poderia escrever algo assim:
 
If Screen.ActiveForm.Name = "Form1" Then
    blça bla bla
End If
 
Mas no seu primeiro contato, você pergunta como fazer para descobrir se o formulário está minimizado, eu falei sobre o evento Resize que ocorre toda vez que seu formulário é redimensionado, expandido, minimizado ou restaurado e até mesmo no momento da carga do formulário em memória. Você pode usar este evento para verificar o estado do seu formulário. Assim:
 
Private Sub Form1_Resize()
 
    If Me.WindowState = vbMinimized Then
        msgbox "Fui minimizado..!"
    ElseIF Me.WindowState = vbMaximized Then
        msgbox "fui Maximizado...!"
    Else
        msgbox "Estou normal..."
    End If
 
End Sub
 
Qualquer dúvida, fale, ou melhor escreva :)
Sandro.
   
rlinop
PORTO ALEGRE
RS - BRASIL
ENUNCIADA !
Postada em 17/11/2004 10:10 hs            
Valeu Sandro minha dúvida está esclarecida!!!!
   
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