![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
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. |
|
#2
|
|||
|
|||
|
Estás seguro que la forma principal de tu aplicación tiene la propiedad FormStyle en fsMDIForm?
|
|
#3
|
|||
|
|||
|
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. |
|
#4
|
|||
|
|||
|
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:
|
|
#5
|
||||
|
||||
|
De la ayuda de Delphi:
Cita:
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 |
|
#6
|
|||
|
|||
|
Me ciño a lo que pusiste desde el principio, pero me dice:
Error: "Undeclared indentifier: 'mrOk' Y de aqui no salgo. Ayuda? |
|
#7
|
|||
|
|||
|
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. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|