Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Problemas con formularios (https://www.clubdelphi.com/foros/showthread.php?t=22578)

(VIH)Lestat 20-06-2005 20:10:35

Problemas con formularios
 
Miren señores tengo otro problema y es acerca de los formularios MDI y SDI.. tengo activado el MDI como el principal el cual aparecera de primero cuando ejecuto el programa... y tengo otro que cargara cuando doy clik en abrir de mi menu.. pero cuando ejecuto mi aplicacion aparece desde luego el Principal pero tambien aparece el Hijo (SDI) y no quiero que aparezcan al mismo tiempo si no solo cuando lo llame con el menu..

Aque se debe??? sera por que en el formulario HIJo (SDI) utilizo modulo de datos en donde incluyo mis componentes de base de datos????
sera por eso???? y como le hago para cambiarlo...

Espero que me puedan ayudar... y que me disculpen si los molesto demasiado pero creo que este es el unico lugar endonde me pueden ayudar... por que se que en este foro hay expertos en delphi7

espero su respuesta lo mas pronto posible,,

GRAX y SALU2 a TODOS:D:D:D:D:D

roman 20-06-2005 20:23:01

A ver. Creo que estás confundiendo conceptos.

MDI y SDI son tipos de aplicaciones (no de formularios). MDI es para ventanas mútliples y SDI para una sóla ventana. En una aplicación MDI hay una ventana principal (FoymStyle = fsMDI) y ventanas hijas (FormStyle = fsMDIChild).

Ahora bien, las ventanas MDI hijas no pueden ocultarse, de manera que se visualizan desde el momento en que las creas. Así que, si las dejas en la opción AutoCreate, aparecerán desde que arrancas la aplicación.

Entonce lo que debes hacer es quitarlas de esa opción y crearlas tú mismo desde el menú.

// Saludos

(VIH)Lestat 20-06-2005 20:39:29

ok si perdona por la confusion de los conceptos... lo siento..pero si te entendi enotnces de mi menu tengo que pones cierto codigo para crear el formulario..Estoy en lo correcto????

entonces me podrias que codigo es el que pondria en mi menu para crearlo??
porfavor

Salu2 ROMAN

Lepe 20-06-2005 21:31:14

En tu opción de menú:
Código Delphi [-]
  Application.CreateForm(TNombreVentana, NombreVentana);

En la ventana, en el evento OnClose:
Código Delphi [-]
procedure Tform1.FormClose(....);
begin
  action := cafree;
  nombreVentana := nil;
end;

Esto es si solo quieres que se abra una ventana del tipo TNombreVentana, es decir, Una misma ventana, no puedes tenerla 2 veces abirtas al mismo tiempo.

Un saludo

hermes_32 21-06-2005 09:27:25

Hola (VIH)Lestat,

se te abre el form hijo al iniciar la aplicacion porque lo tienes "Autocreate". Es decir, si vas al menu Project -> Options -> Forms, verás que el form hijo aparece en la parte de Auto-create forms. Pásalo a la lista de la derecha y con eso te sirve.

Un saludo.

(VIH)Lestat 21-06-2005 16:25:43

Hola HERMES

Acerca de tu opinion con los formularios... Si pongo mi formulario hijo en la opcion de "formulario existente" en el menu: Proyect/options.. no lo puedo llamar desde mi formulario Padre por su nombre... por que me saca un error que dice que el formulario no se ha creado.. y me marca error en la aplicacion...

Aque se debera?? lo tengo que crear por medio de codigo ??' supongo....

Gracias a todos por sus comentarios y su ayuda los tomare muy en cuenta...

SALU2..

vtdeleon 22-06-2005 00:25:49

Saludos.

Para crear el formulario hijo
Código Delphi [-]
begin
  Formulario:=Tformulario.create(self);
  formulario.show;//showmodal
end;
Suerte


La franja horaria es GMT +2. Ahora son las 07:59:52.

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