• Jueves 14 de Noviembre de 2024, 23:11

Autor Tema:  Cargar Un Formulario Correctamente  (Leído 1916 veces)

Ithilien

  • Miembro MUY activo
  • ***
  • Mensajes: 116
    • Ver Perfil
Cargar Un Formulario Correctamente
« en: Viernes 22 de Junio de 2007, 01:52 »
0
Hola,

      estoy haciendo una aplicación tal que cuando se pulsa un boton de un formulario determinado, el evento hace que se abra otro y comience a avanzar una progressbar. El problema que tengo es que cuando esto ocurre, la imagen que hay en el formulario que la uso como "fondo" del mismo no me aparece. Tampoco aparecen los TLabel que hay. Entonces mi pregunta es:¿hay alguna forma de que se cargue el formulario completamente y luego comience el cómputo del progressbar?

Muchas gracias.

P.D.:Si sirve de algo, la función que invoca el click en el botón es Form->Show();

weps84

  • Miembro MUY activo
  • ***
  • Mensajes: 138
    • Ver Perfil
Re: Cargar Un Formulario Correctamente
« Respuesta #1 en: Viernes 22 de Junio de 2007, 05:42 »
0
pues te aconsejaria el siguiente codigo:

metodo onclick del raton{
             Form2 = new TForm2(Application);
             Form2->ShowModal();
             delete Form2;
}

ojo suponiendo que la Forma se llama Form2, solo cambiale Form2 por el nombre de la Forma que quieres abrir

 :lightsabre:  :lightsabre:  :lightsabre:  :lightsabre:  :lightsabre:  :lightsabre:  :lightsabre:  :lightsabre:  :lightsabre:  :lightsabre:  :lightsabre:

Ithilien

  • Miembro MUY activo
  • ***
  • Mensajes: 116
    • Ver Perfil
Re: Cargar Un Formulario Correctamente
« Respuesta #2 en: Viernes 22 de Junio de 2007, 18:30 »
0
Gracias por responder, pero no me sirve, ya que al hacer ( el formulario se llama FormCargar )
Código: Text
  1.  
  2. FormCargar->ShowModal();
  3. ...
  4. while(......){
  5. ....
  6. FormCargar->ProgressBar->Position++;
  7. ...
  8. }//Y resto de código que forma parte del proceso de comprobación de la existencia de un fichero
  9.  
  10.  
El formulario se queda parado, sin hacer nada, ya que he estado leyendo que ShowModal() detiene la ejecución o algo así hasta que se produzca un evento o similar... ( corregidme si me equivoco ). Entonces no aparece la barra de progreso avanzando ni nada.

A lo mejor no me expliqué con claridad en el primer post. Necesito que se cargue el formulario entero y posteriormente necesito hacer una determinada tarea. Esa tarea no está en el evento OnShow del formulario que cargo, sino que desde otro llamador hago FormCargar->Show(); y luego hago el resto, como se podía ver en el fragmento de código anterior ( es decir, que desde el formulario llamador se hace todo ).

He probado a ponerlo en el evento OnShow de FormCargar, pero también me pasa lo mismo, esto es, hasta que no se completa la tarea no aparece el formulario dibujado completamente, y se me ve entero en blanco salvo la ProgressBar, que se ve como avanza...

A ver si alguien sabe como arreglar el problemilla....

Saludos!

weps84

  • Miembro MUY activo
  • ***
  • Mensajes: 138
    • Ver Perfil
Re: Cargar Un Formulario Correctamente
« Respuesta #3 en: Sábado 23 de Junio de 2007, 04:31 »
0
por que no lo haces pero con un timmer en vez de un while

Ithilien

  • Miembro MUY activo
  • ***
  • Mensajes: 116
    • Ver Perfil
Re: Cargar Un Formulario Correctamente
« Respuesta #4 en: Sábado 23 de Junio de 2007, 11:53 »
0
Muchas gracias. Funcionó a la perfección!!!!!

weps84

  • Miembro MUY activo
  • ***
  • Mensajes: 138
    • Ver Perfil
Re: Cargar Un Formulario Correctamente
« Respuesta #5 en: Domingo 24 de Junio de 2007, 06:56 »
0
de nada viejo