Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-05-2011
Avatar de Thoma
Thoma Thoma is offline
Miembro
NULL
 
Registrado: abr 2011
Posts: 46
Poder: 0
Thoma Va por buen camino
Error al llamar a un form hija

Tengo un pequeño problema, me explico, tengo un form1 principal con los clasicos edit de "usuario", "pasword", etc... desde form1 llamo a otro form2 con la propiedad fsMDIForm que me va a servir de formulario padre, y dentro de este tengo un boton para llamar a una ventana hija, con el siguiente codigo:
Código Delphi [-]
  if Form3=nil then begin
    Form3:=TForm3.Create(Self);
    Form3.FormStyle:=fsMDIChild;
  end;
  Form3.Show;
Cuando pulso el boton para abrir el form3 me aparece el siguiente error:
Message : Cannot create form. No MDI forms are currently active.
Alguien me puede decir que tengo mal.
un saludo.

espero haber publicado el hilo en el lugar correcto.
Responder Con Cita
  #2  
Antiguo 29-05-2011
Diego666 Diego666 is offline
Registrado
NULL
 
Registrado: oct 2010
Posts: 7
Poder: 0
Diego666 Va por buen camino
Post

Tal vez esto te Sirva ..

Código Delphi [-]
 var
 Forma: TPasswordDlg;
 begin
  Forma := TPasswordDlg.Create(Forma);
   Forma.Caption := 'Validar Contrasenas';
        Forma.FormStyle:=fsMDIForm;
        Forma.ShowModal;
        Regresaconecion:=Forma.TerminalLocal.Text;
 end;

Saludos !!
Responder Con Cita
  #3  
Antiguo 29-05-2011
Avatar de Thoma
Thoma Thoma is offline
Miembro
NULL
 
Registrado: abr 2011
Posts: 46
Poder: 0
Thoma Va por buen camino
Diego666; te agradezco tu respuesta, pero no acabo de entenderla.
el Form2 (formulario Padre)
Código Delphi [-]
  Form2:=TForm2.Create(Application);
  Form2.ShowModal;
me lo crea correctamente, el problema lo tengo cuando desde el Form2 intento crear el Form3 que es un formulario hija.
Responder Con Cita
  #4  
Antiguo 30-05-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Thoma.

Revisá este [ enlace ], ahí se explica lo que te está sucediendo.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 30-05-2011
Avatar de Thoma
Thoma Thoma is offline
Miembro
NULL
 
Registrado: abr 2011
Posts: 46
Poder: 0
Thoma Va por buen camino
Gracias ecfisa, el tema me ha quedado claro.
[FONT='Calibri','sans-serif']Entonces según esto, el Form1 siempre tiene que ser el “padre”; ahora bien, ¿cómo puedo hacer para que antes de visualizar el Form1 (padre), me abra el Form2 (para pedir el usuario) y si es correcto entonces pasar a visualizar el Form1 y si no es correcto cerrar la aplicación?[/font]
Responder Con Cita
  #6  
Antiguo 30-05-2011
Avatar de Thoma
Thoma Thoma is offline
Miembro
NULL
 
Registrado: abr 2011
Posts: 46
Poder: 0
Thoma Va por buen camino
Bueno, creo que he encontrado la solución.
He puesto en el evento “onShow” (antes de que el formulario se haga visible) del formulario padre la apertura del formulario “Usuario”.
Responder Con Cita
  #7  
Antiguo 30-05-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Thoma.

Me alegro que lo hayas resuelto, otra posibilidad es poner en tu poyecto:
Código Delphi [-]
begin
  Application.Initialize;
  Application.CreateForm(TMDIForm, MDIForm);
  Application.ShowMainForm:= False;
  Application.CreateForm(TFrmPassword, FrmPassword);
  FrmPassword.ShowModal;
  Application.ShowMainForm:= True;
  Application.Run;
end;
Donde MDIForm es tu form MDI principal y FrmPassword es el form donde se ingresa usuario y contraseña.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 30-05-2011 a las 09:32:49.
Responder Con Cita
  #8  
Antiguo 14-10-2011
Avatar de Diego827
Diego827 Diego827 is offline
Miembro
NULL
 
Registrado: oct 2010
Posts: 157
Poder: 14
Diego827 Va por buen camino
Exacto!

Cita:
Empezado por ecfisa Ver Mensaje
Hola Thoma.

Revisá este [ enlace ], ahí se explica lo que te está sucediendo.

Saludos.
Estimado ecfisa; tienes toda la razón. Tengo un formulario padre y me error al llamar al hijo. Y si en definitiva debe ser el form principal el formulario padre.

Saludos,
Responder Con Cita
Respuesta



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
llamar al evento click de un boton q se encuentra en un form desde otro form TURBOIGOR OOP 6 02-12-2008 14:50:16
Como llamar form desde otros form y regresar a la linea que se estaba ejecutando Willy Rodrigo C++ Builder 1 03-08-2007 19:36:23
Proyecto MDI, error al crear form hija nfrfabian Varios 22 04-07-2007 01:29:47
Error al llamar un form en ShowModal DarkByte OOP 4 28-12-2005 09:16:12
Error de memoria al llamar otra form dmagui Conexión con bases de datos 18 26-09-2005 22:43:27


La franja horaria es GMT +2. Ahora son las 04:24:20.


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