![]() |
Pantalla de proceso y barra de progreso
Buenas a todos,
Tengo una pantalla en mi aplicación Delphi que cuando se clickea sobre un botón para procesar información muestra una barra de progreso que está en otro formulario. El problema es que el formulario de la barra de progreso no se puede mostrar con ShowModal porque el formulario dejaría de procesar. El problema es que si alguien presiona sobre el formulario de proceso la barra pasa a estar en un segundo plano, cosa que no debería, esta debería estar en primer plano siempre y cerrarse cuando se termina el proceso de los datos. Hay alguna forma de solucionar esto?. Hay montón de aplicaciones que mientras procesa un formulario muestra una barra de progreso y esta no se puede pasar a segundo plano. Si se presiona sobre el formulario que la abrió no te deja poner a este en primer plano. Desde ya muchas gracias por las respuestas El Rayo |
Hola,
¿y por qué no pones la barra de progreso en el mismo formulario que el botón? Puedes colocar su propiedad visible a false y luego:
|
Cita:
Aunque no muestres el formulario con ShowModal, puedes ponerle en la propiedad FormStyle el valor fsStayOnTop. Eso no lo muestra modal, pero debería mantenerlo siempre en primer plano. https://docwiki.embarcadero.com/Libr...Form.FormStyle |
Cita:
Igualmente he visto varias aplicaciones que tienen un formulario independiente para la barra. En uno la puedes mover por la pantalla (no es lo que busco) pero no puedes hacer click en el formulario que la inicio porque no te deja trabajar sobre este hasta que no se termine el proceso o sea cancelado. Saludos Saludos |
Cita:
No recuerdo si lo he probado, pero voy a ver que resultados da y comentare por si a alguien le puede servir. Saludos |
Buenas noches,
Paso a comentarles que al parecer la solución de poner el formulario StayOnTop funcionó, pero no como todos puedan creer. Para que funcionara cuando se crea el formulario en el evento "formCreate" tuve que poner lo siguiente como primera línea:
y el el evento "FormDestroy" del formulario por seguridad puse lo siguiente:
Esta fue la única forma de que funcionara porque no se que pasa que ninguna de las versiones de Delphi que he probado funciona la propiedad "stayOnTop". La última versión que probé y con la que realmente vengo trabajando es con la 11.2 Saludos |
Cita:
La propiedad fsStayOnTop funciona correctamente. Yo la estoy usando y la he probado en diferentes versiones. Si la activas para un formulario lo mantendrá por encima del resto de los formularios de la aplicación. Estaría bien, que si comentas que no te ha funcionado, explicaras el porqué. Cita:
Si te fijas es bastante similar o igual a lo que tú has puesto en tu código. Si ver tu código (que sólo conoces tú) es difícil saber porqué esa línea no ha funcionado (o no se ha ejecutado) y sí la que tú has puesto en el FormCreate. |
La franja horaria es GMT +2. Ahora son las 23:52:05. |
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