Función DoEvents

Importante:  Este artículo se ha traducido con traducción automática; vea la declinación de responsabilidades. Para su referencia, puede encontrar la versión en inglés de este artículo aquí.

Nota: La función, el método, el objeto o la propiedad descritas en este tema se desactiva si se está ejecutando el servicio de expresión Microsoft Jet en modo de recinto de seguridad, lo que evita la evaluación de expresiones potencialmente no seguras. Para obtener más información sobre el modo de recinto de seguridad, busque "modo de recinto de seguridad" en la Ayuda.

Proporciona una ejecución para que el sistema operativo pueda procesar otros eventos.

Sintaxis

DoEvents ( )

Observaciones

La función DoEvents devuelve un número entero que representa el número de formularios abiertos en versiones independientes de Microsoft Visual Basic, como Visual Basic Professional Edition. DoEvents devuelve cero en todas las demás aplicaciones.

DoEvents pasa el control al sistema operativo. Control se devuelve cuando el sistema operativo termine de procesar los eventos de su cola y se han enviado todas las claves de la cola EnviarTeclas .

DoEvents es muy útil para cosas sencillas como permiten al usuario cancelar un proceso después de que ha iniciado, por ejemplo una búsqueda de un archivo. Para los procesos de ejecución larga, generando al procesador se logra mejor mediante un temporizador o delegar la tarea a un componente ActiveX EXE. En este caso, la tarea puede continuar completamente independiente de la aplicación y el sistema operativo se encarga de multitarea y divisiones de tiempo.

Cualquier momento que RENDTO temporalmente el procesador en un procedimiento de evento, asegúrese de que la procedimiento no se vuelve a ejecutar desde una parte diferente del código antes de la primera llamada devuelve; Esto podría provocar resultados inesperados. Además, no utilice DoEvents si es posible que otras aplicaciones interactúen con el procedimiento de maneras imprevistos durante el tiempo que se han producido control.

Ejemplo

Nota: Los ejemplos siguientes muestran el uso de esta función en un Visual Basic para aplicaciones (VBA). Para obtener más información sobre cómo trabajar con VBA, seleccione la Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o varios términos en el cuadro de búsqueda.

Este ejemplo usa la función DoEvents para hacer que la ejecución de rendimiento para el sistema operativo una vez cada 1.000 iteraciones del bucle. DoEvents devuelve el número de formularios abiertos de Visual Basic, pero solo cuando la aplicación host es 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.

Nota: Declinación de responsabilidades de traducción automática: Este artículo se ha traducido con un sistema informático sin intervención humana. Microsoft ofrece estas traducciones automáticas para que los hablantes de otros idiomas distintos del inglés puedan disfrutar del contenido sobre los productos, los servicios y las tecnologías de Microsoft. Puesto que este artículo se ha traducido con traducción automática, es posible que contenga errores de vocabulario, sintaxis o gramática.

Ampliar sus conocimientos
Explorar los cursos
Obtener nuevas características primero
Únase a los participantes de Office Insider

¿Le ha sido útil esta información?

¡Gracias por sus comentarios!

Gracias por sus comentarios. Quizá le interese ponerse en contacto con uno de nuestros agentes de soporte de Office.

×