Função DoEvents

Importante :  Este artigo foi traduzido por um sistema de tradução automática, leia o aviso de isenção de responsabilidade. Para sua referência, veja a versão em inglês deste artigo aqui.

Observação : A função, método, objeto ou propriedade descrito neste tópico será desabilitada se o Microsoft Jet Expression Service está em execução no modo de área restrita, o que impede a avaliação das expressões possivelmente não seguras. Para obter mais informações sobre o modo seguro, procure por "modo seguro" na Ajuda.

Gera a execução para que o sistema operacional possa processar outros eventos.

Sintaxe

DoEvents ( )

Comentários

A função DoEvents retorna um inteiro que representa o número de formulários abertos em versões independentes do Microsoft Visual Basic, como o Visual Basic, Professional Edition. DoEvents retorna zero em todos os outros aplicativos.

DoEvents passa o controle para o sistema operacional. O controle é retornado depois que o sistema operacional terminou de processar os eventos na fila e todas as chaves na fila EnviarSequênciaDeCaracteres tiverem sido enviadas.

DoEvents é mais útil para coisas simples, como permitir que um usuário cancele um processo depois de ter começado, por exemplo uma pesquisa para um arquivo. Para processos de execução demorada, resultando em processador melhor realizado usando um cronômetro ou delegar a tarefa a um componente EXE ActiveX. No último caso, a tarefa poderá continuar completamente independente do seu aplicativo e o sistema operacional cuida de multitarefas e divisão de tempo.

Sempre que você conceder temporariamente o processador em um procedimento de evento, verifique se que o procedimento não é executado novamente em outra parte do seu código antes da primeira chamada retornar; Isso pode causar resultados inesperados. Além disso, não use DoEvents se outros aplicativos puderem interagir com seu procedimento de maneiras inesperadas durante o tempo que você tiver concedido o controle.

Exemplo

Observação : Exemplos a seguir demonstram o uso dessa função em um Visual Basic para módulo Applications (VBA). Para obter mais informações sobre como trabalhar com o VBA, selecione a Referência do desenvolvedor na lista suspensa ao lado de pesquisa e insira um ou mais termos na caixa de pesquisa.

Este exemplo usa a função DoEvents para fazer a execução lucro para o sistema operacional uma vez cada iterações de 1000 do loop. DoEvents retorna o número de formulários abertos do Visual Basic, mas somente quando o aplicativo host é o Visual Basic.

' Create a variable to hold number of 
' Visual Basic forms loaded and visible.
Dim I, OpenForms
For I = 1 To 150000 ' Start loop.
If I Mod 1000 = 0 Then ' If loop has repeated
' 1000 times.
OpenForms = DoEvents ' Yield to operating system.
End If
Next I ' Increment loop counter.

Observação : Aviso de Isenção de Tradução Automática: Este artigo foi traduzido por computador, sem intervenção humana. A Microsoft oferece essas traduções automáticas para ajudar as pessoas que não falam inglês a aproveitar os textos escritos sobre produtos, serviços e tecnologias da Microsoft. Como este artigo foi traduzido automaticamente, é possível que contenha erros de vocabulário, sintaxe ou gramática.

Expanda suas habilidades
Explore o treinamento
Obtenha novos recursos primeiro
Ingressar no Office Insider

Essas informações foram úteis?

Obrigado por seus comentários!

Agradecemos pelos seus comentários! Parece que pode ser útil conectar você a um de nossos agentes de suporte do Office.

×