Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Perdida del foco en MessageDlg (https://www.clubdelphi.com/foros/showthread.php?t=47030)

labelsoft 16-08-2007 17:10:42

Perdida del foco en MessageDlg
 
Tengo un problema que me lleva de cabeza con la función MessageDlg.

En una aplicación MDI, desde algunos formularios, al pulsar un botón realizo una tarea que lleva bastante tiempo (varios minutos), durante los cuales la aplicación queda congelada hasta terminar el proceso. Al finalizar muestro un mensaje de “Tarea realizada” con MessageDlg o ShowMessage. La mayoría de las veces funciona correctamente, pero los usuarios se quejan de que muchas veces la ventana no aparece (es como si estuviese detrás de la aplicación) quedando la aplicación paralizada completamente, otras veces si que aparece pero no tiene el foco ni hay forma de que coja el foco, ni con el ratón ni con el teclado.

Sulele fallar más si el cliente se dedica a pulsar con el ratón mientras se realiza la tarea (la aplicación está ocupada y no recibe los clicks) o si cambia a otra aplicación. Cuando vuelve a la aplicación al pulsar en el botón de la barra de tareas, se muestran las ventanas, pero o bien la ventana del dialogo no se ve y la aplicación no coge el foco (la barra superior no se pone azul), o si se ve, no puede coger el foco.

He pensado en cambiar todos los MessageDlg por MessageBox, pero tengo cerca de 300 y me puede llevar mucho tiempo.

También he intentado buscar información en google, pero aunque he encontrado algún caso similar no especifican la solución.

Agradecería cualquier ayuda.


La franja horaria es GMT +2. Ahora son las 07:42:21.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi