Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-05-2018
bucanero bucanero is offline
Miembro
 
Registrado: nov 2013
Ubicación: Almería, España
Posts: 208
Poder: 13
bucanero Va camino a la fama
Vale ya veo el problema que tienes. Si lo que quieres es utilizar el form2 como fondo e inicias el form3 en el ONSHOW del form2, el form2 no se te muestra hasta después de finalizar el form3, y por eso estas utilizando el ONACTIVATE... pero es que así entras en bucle o corres el riesgo de hacer operaciones en el form2 estando ya en modo de cierre o inactivo.

Prueba lo siguiente, inserta en el form2 un TTimer con la propiedad enabled desabilitada y utiliza el siguiente código en UNIT2:

Código Delphi [-]
procedure TForm2.FormShow(Sender: TObject);
begin
  // activa el temporizador para que le de tiempo a finalizar el proceso de creación y mostrado del form2
  Timer1.Interval := 300;
  Timer1.Enabled := True;
end;

procedure TForm2.Timer1Timer(Sender: TObject);
begin
  // desactiva el timer
  Timer1.Enabled := false;
  // muestra form3
  Form3.showModal;
  Close;
end;
Responder Con Cita
  #2  
Antiguo 30-05-2018
Avatar de ethangio
ethangio ethangio is offline
Miembro
 
Registrado: jul 2008
Posts: 63
Poder: 18
ethangio Va por buen camino
Bucanero, hice como me dijiste y obtengo el siguiente error: " Cannot make a visible window modal "

No entro en bucle con el evento OnActivate. Probe poniento un mensaje en ese evento y solo lo hace despues de mostrarse:

Código Delphi [-]
procedure TForm2.FormActivate(Sender: TObject);
begin
  ShowMessage('Activo');
  Form3.ShowModal;
end;

Lo que no me puedo explicar es por qué cuando presiono el boton del Form2 y muestro el Form3 al cerrar las ventanas con el boton del Form3 si funciona el cierre del Form2.

Por favor prueba el codigo que utilizo en el ejemplo y sabrás a lo que me refiero. Gracias.
Responder Con Cita
  #3  
Antiguo 30-05-2018
bucanero bucanero is offline
Miembro
 
Registrado: nov 2013
Ubicación: Almería, España
Posts: 208
Poder: 13
bucanero Va camino a la fama
Cita:
Empezado por ethangio Ver Mensaje
Bucanero, hice como me dijiste y obtengo el siguiente error: " Cannot make a visible window modal "
No se por que te da ese error, he vuelto a probar el código que te puse y a mi me funciona perfectamente,
Comprueba que el Timer se lance en el evento OnShow y no en el OnActivate.
A mi se me abre el form2 y form3, quedando el form2 de fondo, y al cerrar el form3, bien con el botón o bien desde los controles de la ventana, también se cierra automáticamente el form2.

Cita:
Empezado por ethangio Ver Mensaje
Lo que no me puedo explicar es por qué cuando presiono el botón del Form2 y muestro el Form3 al cerrar las ventanas con el botón del Form3 si funciona el cierre del Form2.
Y probando exactamente tu código, me pasa lo mismo que explicas.

Creo que se debe a que hasta que no se ejecuten todos los procesos de inicialización de la ventana no te permite cerrarla, estos procesos al menos son los que incluye los eventos OnShow y el OnActivate.

De hay mi solución del TTimer para darle tiempo a la ventana a finalizar sus procesos y poner la parte del control del FORM3 fuera de los procesos de la ventana 2 .
Responder Con Cita
  #4  
Antiguo 30-05-2018
Avatar de ethangio
ethangio ethangio is offline
Miembro
 
Registrado: jul 2008
Posts: 63
Poder: 18
ethangio Va por buen camino
Perdón bucanero tenia un error de dedo por eso el error, valga la redundancia.

La solucion que me dijiste efectivamente funciona. Agradezco mucho tu tiempo y la solucion que me proporcionaste.

Un abrazo y de nuevo muchas gracias.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Obtener valor de una propiedad de una Tabla en un Form1 desde otro Form2 Yugo C++ Builder 6 19-11-2015 10:57:08
abrir y cerrar form2 desde form1 aitorqrv Lazarus, FreePascal, Kylix, etc. 15 20-12-2013 21:11:05
Dejar siempre visible Form2 que se llama desde Form1 yevabas Varios 1 11-05-2013 00:45:40
acceder al form1 desde el form2. petete2008 OOP 2 08-02-2012 20:29:59
form2 cerrar el form1 ingabraham Varios 6 07-01-2009 19:11:13


La franja horaria es GMT +2. Ahora son las 00:11:03.


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