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 26-02-2007
Avatar de BlackDaemon
BlackDaemon BlackDaemon is offline
Miembro
 
Registrado: dic 2006
Ubicación: Bolivia - Santa Cruz
Posts: 206
Poder: 18
BlackDaemon Va por buen camino
Aplicación MDI con LOGIN ( problema )

Buenas .. tengo que hacer un sistema de facturación y lo tenía bién y sin problemas hasta que decidí hacer la aplicación en MDI..

Bueno mi problema es que tengo esto antes de mostrar mi formPricipal.

1.- Un FormLoader -> que es el que se crea primero .. este tiene un ProgresBar y un timer algo para darle mas alegancia al programa además cumple la función de mostrar una imagén y el ProgresBar mientras se realiza la conexión con la Base de datos en MySQL .. luego de eso viene.

2.- un FormLogin -> este aparece luego de que termina de cargar el ProgresBar y es un sistema de login que da paso al FormPricipal..

3.- el FormPrincipal -> este es el que contiene todo el menú y el que contendrá TODOS los demás form de la aplicación..

Bueno antes lo tenía todo perfecto.. pero ahora con los MDI me da problemas.

Ahora lo que hice fué esto: hacer mi FormPrincipal la ventana "madre" y las demás que se abrirán en ella serán las "hijas" pero al momento de abrir una fentana "hija" me da este error Cannot create form. No MDI forms are currently active.

Por lo que leí en este foro que otros usuarios tuvieron este problema es que no se puede crear la ventana hija por que el Form que se crea primero .. en mi caso sería el FormLoader no tiene la propiedad "FormStyle" en : fsMDIform y es algo lógico que me de ese error... ahora el problema esta en que por mas que leí no logré entender como resolver este problema..
osea tener unos 2 forms antes del "fsMDIform"

Alguna idea ?? mas bién como podría hacer eso... ???
y si, ya miré el ejemplo de dec pero no logré entenderlo por que mis conocimientos son bajos en delphi

Bueno espero alguna respuesta con la manera de hacer lo que quiero de la forma "correcta"

saludos y gracias por leer semejante post xDD



PD cualquier duda me lo preguntan que estaré todo el día conectado xD
Responder Con Cita
  #2  
Antiguo 26-02-2007
Avatar de ixMike
ixMike ixMike is offline
Miembro
 
Registrado: feb 2004
Posts: 1.151
Poder: 22
ixMike Va por buen camino
Bueno, hace tiempo hice una aplicación exactamente igual (en la estructura). El funcionamiento era el siguiente:

1º un FormLoader (yo los llamo SplashScreen), con su imagen y su barra de progreso (aunque eso del Timer pienso que es una chapucilla, te recomiendo que busques en el foro algo sobre las SplashScreen, que de eso ya se ha hablado mucho).
2º en segundo lugar se creaba el FormPrincipal, que contenía a todas las hijas. Pero con la propiedad Visible en False.
3º En el evento OnCreate del FormPrincipal hago la llamada a la ventana Login.
4º una vez el login es correcto se cierra la ventana login (que es Modal) y pongo la Visible del principal en True.

Eso además me ayudó a hacer cambios de usuario. Me explico: tras hacer el primer login el programa lo utilizas, pero si querías cambiar de usuario pulsabas el correspondiente menú, volvía a poner el visible en false y llamaba otra vez a la ventana Login de forma Modal. Pero no se te ocurra ponerle un botón "cancelar", sino uno "Cerrar programa".

Espero que te sirva de ayuda. Cuando lo hice tampoco tenía muchos conocimientos de programación.

Si no te aclaras, dílo, y pondré aquí el código necesario (me pondré a buscarlo).

Saludos a todo el foro
Responder Con Cita
  #3  
Antiguo 27-02-2007
Avatar de BlackDaemon
BlackDaemon BlackDaemon is offline
Miembro
 
Registrado: dic 2006
Ubicación: Bolivia - Santa Cruz
Posts: 206
Poder: 18
BlackDaemon Va por buen camino
Hola... gracias por tu respuesta tan rápida, pero!! tu aplicación era MDI ??
por que no me dijiste que cual era el form que se creaba primero.. tampoco cual era el form madre o padre creo xDD bueno.. ya havía pensado en poner el formPrincipal en INVISIBLE pero quisiera que me muestres el código para poder darme una mejor idea ya que no puedo avanzar con la aplicación por que no esta lista esta parte..

Bueno espero me respondas.. y me aclares la duda..

saludos y gracias

PD me gustaría mucho que me envies el código a koko [at] yashira.org o lowlifebob [at] gmail.com
por que creo que aquí no se puede adjuntar mucho

saludos


PD el form de splashScreem que dices era ventana padre ?? hija ?? el sistema de login lo mismo ??
no logro entendér eso.. por que creo que no sep uede crear una ventana hija si el PRIMER form en crearse es normal..
mejor mándame el ejemplo xD

Última edición por BlackDaemon fecha: 27-02-2007 a las 02:01:41.
Responder Con Cita
  #4  
Antiguo 27-02-2007
[pepon386] pepon386 is offline
Miembro Premium
 
Registrado: ene 2005
Ubicación: Valencia
Posts: 68
Poder: 20
pepon386 Va por buen camino
Te adjunto un pequeño ejemplo de código fuente del proyecto:

Código Delphi [-]
  Application.Initialize;
  FSplashForm := TFSplashForm.Create(Application);
  FSplashForm.Show;
  // DMMain --> TDataModule que contiene la conexión a la base de datos
  Application.CreateForm(TDMMain, DMMain);
  // DMMain.Login --> Función que muestra una ventana para validar usuario
  // y contraseña
  if DMMain.Login then
  begin
    Application.CreateForm(TFMain, FMain);
  end;
  FSplashForm.Hide;
  FSplashForm.Free;
  Application.Run;
Responder Con Cita
  #5  
Antiguo 27-02-2007
Avatar de BlackDaemon
BlackDaemon BlackDaemon is offline
Miembro
 
Registrado: dic 2006
Ubicación: Bolivia - Santa Cruz
Posts: 206
Poder: 18
BlackDaemon Va por buen camino
pepon386 lo siento pero no entendí nada tu ejemplo...
por que no dices que forms es el padre o cual los hijos.. además ahí por lo que veo no creas el form principal que contendrá a todos los hijos.. bueno soy nuevo en esto y tal véz por eso no entendí, de todas formas gracias

saludos y a ver si me ayudan que la verdad intento de todos modos pero nada... no puedo :S
Responder Con Cita
  #6  
Antiguo 27-02-2007
Alexis De la Cr Alexis De la Cr is offline
Miembro
 
Registrado: may 2006
Ubicación: Puebla
Posts: 124
Poder: 19
Alexis De la Cr Va por buen camino
Yo tengo una Aplicacion MDI con Login y me funciona Pefectamente.. Mis conocimientos son muy basicos pero bueno intentare aportarte algo...

tengo un form principal MDI madre y un monton de MDI Hijas... ahora bien... el form del login no es MDI, es del tipo normal, y lo muestro a traves del evento onshow del form principal.. No se si sea exactamente lo que andas buscando, pero creo que debe seguir el mismo procedimiento.

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
problema con el icono de la aplicacion Choclito Varios 3 29-07-2006 20:22:09
Problema con Aplicacion MDI Thales OOP 7 19-08-2005 15:31:07
Problema con mi aplicación JerS Varios 2 18-07-2005 16:33:51
Aplicacion Antes Del Login De Windows omardelahoz Varios 2 22-06-2004 16:29:48
Problema con aplicacion MDI wallesis OOP 5 03-01-2004 11:17:28


La franja horaria es GMT +2. Ahora son las 19:35:19.


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