Vídeo recomendado
https://youtu.be/diWPPPhW-9E
https://youtu.be/diWPPPhW-9E
Inserir Relógio no Formulário através API [RESOLVIDO]
-
- Acabou de chegar
- Mensagens: 7
- Registrado em: Sáb Nov 14, 2020 12:03 pm
Inserir Relógio no Formulário através API [RESOLVIDO]
Fala galera!
Espero que todos estejam bem! Sou novo nas postagens aqui, mas acompanho o fórum a bastante tempo e tenho aprendido muito.
Gostaria de saber se os amigos poderiam me ajudar com uma questão....
É possível colocar em um Label ou Texbox um relógio através de uma API direto do Windows ou outra função, sem que a tela do formulário fique piscando a cada novo ciclo da macro?
Pois já testei até um código que foi postado aqui no fórum, mas, ao atualizar os segundos, a tela do formulário/mouse fica piscando.
Agradeço desde já pela atenção!
Fico no aguardo galera!
Espero que todos estejam bem! Sou novo nas postagens aqui, mas acompanho o fórum a bastante tempo e tenho aprendido muito.
Gostaria de saber se os amigos poderiam me ajudar com uma questão....
É possível colocar em um Label ou Texbox um relógio através de uma API direto do Windows ou outra função, sem que a tela do formulário fique piscando a cada novo ciclo da macro?
Pois já testei até um código que foi postado aqui no fórum, mas, ao atualizar os segundos, a tela do formulário/mouse fica piscando.
Agradeço desde já pela atenção!
Fico no aguardo galera!
Editado pela última vez por Jonas Gonçalves em Qua Mai 26, 2021 11:35 pm, em um total de 1 vez.
- Mikel Silveira Fraga
- Jedi
- Mensagens: 1173
- Registrado em: Sex Mai 27, 2011 3:27 pm
- Localização: Governador Valadares - MG
- Contato:
Re: Inserir Relógio no Formulário através API
Boa noite Jonas, tudo bem?
Já havia desenvolvido uma Classe com essa funcionalidade, e que não fique piscando o formulário.
Porém, essa ferramenta funciona apenas para Labels e TextBoxs.
Vou compartilhar esse modelo aqui no fórum com você, pois estou parado com meu canal no Youtube, mas pediria um favor de acompanhar, pois essa ferramenta será um tema para vídeos em um futuro não muito distante.
Segue link do Canal: Mikel S Fraga
Segue abaixo, o arquivo modelo com a solução: Espero que a solução possa lhe ajudar.
Abraços e excelente semana.
Já havia desenvolvido uma Classe com essa funcionalidade, e que não fique piscando o formulário.
Porém, essa ferramenta funciona apenas para Labels e TextBoxs.
Vou compartilhar esse modelo aqui no fórum com você, pois estou parado com meu canal no Youtube, mas pediria um favor de acompanhar, pois essa ferramenta será um tema para vídeos em um futuro não muito distante.
Segue link do Canal: Mikel S Fraga
Segue abaixo, o arquivo modelo com a solução: Espero que a solução possa lhe ajudar.
Abraços e excelente semana.
-
- Acabou de chegar
- Mensagens: 7
- Registrado em: Sáb Nov 14, 2020 12:03 pm
Re: Inserir Relógio no Formulário através API
Bom dia, Mikel!
Graças à Deus tudo bem!
Mikel, o módulo funcionou perfeitamente.
Somente fiz alguns ajustes para que apenas 1 Label recebesse o valor da hora, e funcionou.
Porém, gostaria de tirar uma dúvida com você sobre algo que percebi.
Quando uma outra janela (Form) é ativado, o relógio dá uma pausa. E ao ser fechada a janela, o relógio volta ao normal.
Teria alguma forma de deixarmos ele rodar direto, até que seja fechado o sistema por inteiro?
Obrigado mais uma vez!
Graças à Deus tudo bem!
Mikel, o módulo funcionou perfeitamente.
Somente fiz alguns ajustes para que apenas 1 Label recebesse o valor da hora, e funcionou.
Porém, gostaria de tirar uma dúvida com você sobre algo que percebi.
Quando uma outra janela (Form) é ativado, o relógio dá uma pausa. E ao ser fechada a janela, o relógio volta ao normal.
Teria alguma forma de deixarmos ele rodar direto, até que seja fechado o sistema por inteiro?
Obrigado mais uma vez!
- Mikel Silveira Fraga
- Jedi
- Mensagens: 1173
- Registrado em: Sex Mai 27, 2011 3:27 pm
- Localização: Governador Valadares - MG
- Contato:
Re: Inserir Relógio no Formulário através API
Jonas, bom dia.
Provavelmente, você utilizou a declaração que fiz no Userform. Tente jogar a declaração do objeto para um Módulo e como Publico.
Outro ponto, que esse segundo formulário, provavelmente deve estar sendo aberto com a opção ShowModal do Userform, como verdadeiro. Isso dar foco no novo Userform que esta sendo aberto, impedindo que as rotinas de outros Módulos e Userforms continuem.
Nesse caso, sugiro dar uma olhada no funcionamento dessa opção ShowModal e ver se alterar para False, não irá afetar o processo de sua ferramenta.
Uma das duas situações podem vir a resolver esse impasse.
Dúvidas, estou a disposição. Abraços e excelente dia.
Provavelmente, você utilizou a declaração que fiz no Userform. Tente jogar a declaração do objeto para um Módulo e como Publico.
Outro ponto, que esse segundo formulário, provavelmente deve estar sendo aberto com a opção ShowModal do Userform, como verdadeiro. Isso dar foco no novo Userform que esta sendo aberto, impedindo que as rotinas de outros Módulos e Userforms continuem.
Nesse caso, sugiro dar uma olhada no funcionamento dessa opção ShowModal e ver se alterar para False, não irá afetar o processo de sua ferramenta.
Uma das duas situações podem vir a resolver esse impasse.
Dúvidas, estou a disposição. Abraços e excelente dia.
-
- Acabou de chegar
- Mensagens: 7
- Registrado em: Sáb Nov 14, 2020 12:03 pm
Re: Inserir Relógio no Formulário através API [RESOLVIDO]
Boa noite, Mikel!
Entendi!
Vou revisar esses pontos sim e verificar se vai funcionar certinho.
Mesmo assim, muito obrigado mesmo por ter solucionado algo que eu não estava achando em lugar nenhum.
Ficou excelente!
Mais uma vez, obrigado!
Entendi!
Vou revisar esses pontos sim e verificar se vai funcionar certinho.
Mesmo assim, muito obrigado mesmo por ter solucionado algo que eu não estava achando em lugar nenhum.
Ficou excelente!
Mais uma vez, obrigado!
-
- Acabou de chegar
- Mensagens: 7
- Registrado em: Sáb Nov 14, 2020 12:03 pm
Re: Inserir Relógio no Formulário através API [RESOLVIDO]
Mikel, bom dia!
Desculpa incomodar mais uma vez com esse assunto.
Mas, só uma outra dúvida que percebi aqui.
Quando fecho todos os forms, a macro ainda fica rodando em segundo plano.
O procedimento "oClock.StopTimer" eu até coloquei no evento QueryClose do form, e no evento Terminate o procedimento Set oClock = Nothing.
Porém mesmo assim a macro do relógio roda em segundo plano.
Desculpa incomodar mais uma vez com esse assunto.
Mas, só uma outra dúvida que percebi aqui.
Quando fecho todos os forms, a macro ainda fica rodando em segundo plano.
O procedimento "oClock.StopTimer" eu até coloquei no evento QueryClose do form, e no evento Terminate o procedimento Set oClock = Nothing.
Porém mesmo assim a macro do relógio roda em segundo plano.
- Mikel Silveira Fraga
- Jedi
- Mensagens: 1173
- Registrado em: Sex Mai 27, 2011 3:27 pm
- Localização: Governador Valadares - MG
- Contato:
Re: Inserir Relógio no Formulário através API [RESOLVIDO]
Jonas, bom dia.
Cara, da uma olhada se esse procedimento não esta sendo inicializado em outro local também, pois se você esta utilizando o Set oClock = Nothing no evento Terminate, não tem como a macro continuar rodando.
O motivo disso, é que você esta limpando da memória a instância do objeto, se tornando impossível que continue a funcionar.
Caso queira que eu dê uma olhada, me envia o arquivo via WhatsApp, que dou uma olhada para você. Vou te passar meu número em MP, ok!?
Fico aguardando um retorno teu.
Cara, da uma olhada se esse procedimento não esta sendo inicializado em outro local também, pois se você esta utilizando o Set oClock = Nothing no evento Terminate, não tem como a macro continuar rodando.
O motivo disso, é que você esta limpando da memória a instância do objeto, se tornando impossível que continue a funcionar.
Caso queira que eu dê uma olhada, me envia o arquivo via WhatsApp, que dou uma olhada para você. Vou te passar meu número em MP, ok!?
Fico aguardando um retorno teu.