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 21-10-2004
Tecnic2 Tecnic2 is offline
Miembro
 
Registrado: may 2004
Posts: 155
Poder: 23
Tecnic2 Va por buen camino
Post Deacuerdo pero....

Gracias, me ha funcionado.
Lo que pasa ahora es lo siguiente:
En las propiedades de mi proyecto solo tengo puesto que se habra automáticamente el form de Login. Una vez validado el usuario y contraseña hago lo siguiente:

Self.Release;
Application.CreateForm(TfMain, fMain);
fMain.Show;


Cierro el Login y abro el formulario principal que es MDI. Hasta aqui bien, pero cuando intento abrir después un form MDIChild me da el error "Cannot create form. No MDI forms are currently active."
Para abrir el MDIChild hago lo siguiente:

if fVentas = Nil then
begin
Application.CreateForm(TfVentas, fVentas);
fVentas.Show;
end
else
fVentas.BringToFront;


Gracias por adelantado.
Responder Con Cita
  #2  
Antiguo 21-10-2004
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 26
maeyanes Va por buen camino
Estás seguro que la forma principal de tu aplicación tiene la propiedad FormStyle en fsMDIForm?
Responder Con Cita
  #3  
Antiguo 21-10-2004
Tecnic2 Tecnic2 is offline
Miembro
 
Registrado: may 2004
Posts: 155
Poder: 23
Tecnic2 Va por buen camino
Post Si claro.

Si claro.
De todas formas, en las propiedades del proyecto, como solo tengo el Login como form para abrirse automáticamente, en el campo de arriba que pone Main Form tengo puesto el Login.
Responder Con Cita
  #4  
Antiguo 21-10-2004
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 26
maeyanes Va por buen camino
No estoy muy seguro, pero ese puede ser tu problema... que la ventana que tu proyecto tiene como Main Form no sea una MDIForm...

Intenta esto:

Código Delphi [-]
if fVentas = Nil then
begin
  Application.CreateForm(TfVentas, fVentas);
  fVentas.Parent := fMain; // Inserta esta línea...
  fVentas.Show
end
else
  fVentas.BringToFront;
Responder Con Cita
  #5  
Antiguo 21-10-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
De la ayuda de Delphi:


Cita:
Note: by default, the form created by the first call to CreateForm in a project becomes the application’s main form
Dado que estás usando CreateForm para crear la ventana del login (cosa que sé porque mencionas que la tienes puesta para abrir en automático) entonces es esta ventana la que queda como principal. Aun cuando fMain sí tiene el estilo fsMDIForm, supongo que la VCL requiere que la ventana MDI sea la principal.

Por ello cíñete al código que te puse desde el principio para crear la ventana del login.

Por otra parte, da la impresión de que estás creando el formulario principal desde la ventana del login lo cual es un error de diseño.

Con estos cambios, verás que, además, no es necesario llamar a fMain.Show ya que el formulario principal siempre es visible por defecto.

Igualmente no necesitas fVentas.Show ya que los formularios MDI hijos siempre son visibles.

// Saludos
Responder Con Cita
  #6  
Antiguo 22-10-2004
Tecnic2 Tecnic2 is offline
Miembro
 
Registrado: may 2004
Posts: 155
Poder: 23
Tecnic2 Va por buen camino
Question Me ciño a lo puesto, pero da error.

Me ciño a lo que pusiste desde el principio, pero me dice:
Error: "Undeclared indentifier: 'mrOk'

Y de aqui no salgo.

Ayuda?
Responder Con Cita
  #7  
Antiguo 22-10-2004
Tecnic2 Tecnic2 is offline
Miembro
 
Registrado: may 2004
Posts: 155
Poder: 23
Tecnic2 Va por buen camino
Unhappy Perdonad, pero siguen los problemas.

Lo siento, me faltava añadir el unit Controls.
Bien, ahora lo único que me falta es saber cómo debo cerrar el Login una vez validado el usuario y contraseña.

Lo que tengo hecho hasta ahora es:
- En las propiedades del proyecto tengo puesto solamente que se inicie el fMain.
- Despues de Application.Initialize tengo lo siguiente:
fLogin := TfLogin.Create(Nil);
if fLogin.ShowModal = mrOk then
begin
fLogin.Free;

Application.CreateForm(TfMain, fMain);
Application.Run;
end;

- Y para cerrar el Login una vez validado tengo ésto otro:
fLogin.Release;
fLogin := Nil;


Lo que ocurre es que al cerrar el Login, la aplicación sigue en marcha, pero sin mostrar ningún formulario principal.

Perdonad mi ignoráncia, soy bastante novato.
Muchas gracias por adelantado.
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


La franja horaria es GMT +2. Ahora son las 05:13:28.


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