Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

zephirus

Verificar se alguma das janelas do program está com focus

Mensagens Recomendadas

zephirus

Olá,

No programa que estou a desenvolver quero que sejam feitos updates a informação de x em x tempo. No entanto, quando a janela não tem focus não vale a pena fazer esse update. Com essa ideia, usei o seguinte código para activar/desactivar o timer para fazer o update:

Private Sub MainFormActivated(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Activated
  Timer1.Enabled = True
End Sub

Private Sub MainFormDeactivated(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Deactivate
  Timer1.Enabled = False
End Sub

O problema agora é que além da MainForm, tenho também outras forms que, quando abertas, não devem colocar o timer1 em disabled. Basicamente o que eu pretendo é que sempre que uma das N janelas que compõem o meu program estão com focus, o timer1 esteja enabled. Como é que faço isso sem estar a escrever código para as diversas situações?

Obrigado.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
bioshock

Secalhar vou dizer uma grande asneira, mas algo como isto não funciona?

        If Me.Focus = True Then
            Timer1.Enabled = True
        Else
            Timer1.Enabled = False
        End If

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
zephirus

Secalhar vou dizer uma grande asneira, mas algo como isto não funciona?

        If Me.Focus = True Then
            Timer1.Enabled = True
        Else
            Timer1.Enabled = False
        End If

Numa das forms sim. Mas eu tenho várias. E quando uma tem focus, a outra não tem e o timer é só um.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.