Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Actualización: noviembre 2007
Procesa todos los mensajes de Windows incluidos en ese momento en la cola de mensajes.
' Usage
My.Application.DoEvents()
' Declaration
Public Sub DoEvents()
El método My.Application.DoEvents permite a su aplicación controlar otros eventos que se podrían provocar mientras se ejecuta el código. El método My.Application.DoEvents tiene el mismo comportamiento que el método DoEvents.
Cuando se ejecuta una aplicación de Windows Forms, ésta crea un nuevo formulario que, a continuación, espera eventos que se deben controlar. Cada vez el formulario controla un evento, como un clic de un botón, procesa todo el código asociado a ese evento. Todos los demás eventos esperan en la cola. Aunque su código controle el evento, su aplicación no responde. Por ejemplo, la ventana no vuelve a dibujarse si se arrastra otra ventana encima de ella.
Si llama a My.Application.DoEvents en su código, su aplicación puede controlar los demás eventos. Por ejemplo, si su código agrega datos a un control ListBox en un bucle y después de cada paso del bucle llama a My.Application.DoEvents, su formulario se vuelve a dibujar cuando se arrastra otra ventana sobre ésta. Si quita My.Application.DoEvents del código, el formulario no se volverá a dibujar hasta que el controlador de eventos del clic del botón termine de ejecutarse.
Normalmente, este método se utiliza en un bucle para procesar los mensajes.
![]() |
---|
El método My.Application.DoEvents no procesa los eventos exactamente de la misma manera que como lo hace el formulario. Utilice el subprocesamiento múltiple para que hacer que el formulario controle directamente los eventos. Para obtener más información, vea Subprocesamiento múltiple en Visual Basic. |
![]() |
---|
Si un método que controla un evento de interfaz de usuario llama al método My.Application.DoEvents, se podría entrar de nuevo en el método antes de finalizar. Esto puede pasar porque el método My.Application.DoEvents procesa los mensajes de Windows, y los mensajes de Windows pueden provocar eventos. |
En la tabla siguiente se incluye un ejemplo de una tarea en la que interviene el método My.Application.DoEvents.
Para |
Vea |
---|---|
Permitir a un formulario responder a las entradas de interfaz de usuario mientras está ocupado |
Este ejemplo utiliza el método My.Application.DoEvents para permitir a la interfaz de usuario actualizar TextBox1.
Private Sub TestDoEvents()
For i As Integer = 0 To 10000
TextBox1.Text = i.ToString
My.Application.DoEvents()
Next
End Sub
Este código debería estar en un formulario que tiene un componente TextBox1 con una propiedad Text.
Espacio de nombres:Microsoft.VisualBasic.ApplicationServices
Clase:WindowsFormsApplicationBase
Ensamblado: biblioteca en tiempo de ejecución de Visual Basic (en Microsoft.VisualBasic.dll)
Tipo de proyecto |
Disponible |
---|---|
Aplicación para Windows |
Sí |
Biblioteca de clases |
No |
Aplicación de consola |
No |
Biblioteca de controles de Windows |
No |
Biblioteca de controles Web |
No |
Servicio de Windows |
No |
Sitio Web |
No |
Los permisos siguientes pueden ser necesarios:
Permiso |
Descripción |
---|---|
Controla la capacidad de tener acceso a archivos y carpetas. Enumeración asociada: Unrestricted. |
|
Controla los permisos relacionados con interfaces de usuario y el Portapapeles. Enumeración asociada: AllWindows. |
Para obtener más información, vea Seguridad de acceso a código y Solicitar permisos.