Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-12-2007
citlalliDgp citlalliDgp is offline
Miembro
 
Registrado: oct 2007
Posts: 38
Poder: 0
citlalliDgp Va por buen camino
Arrow Modal dentro de MDI

Hola amigos, una vez mas me encuentro necesitando de su ayuda. Me ecnuentro con el problema de que he creado algunos forms MDI, tengo el form padre que es tambien el formulario principal de mi aplicación, y he creado varios forms hijos que son invocados desde un TMainMenu que colocado en el form padre. La cuestión es que cuando invoco cualquiera de los forms fsMDIChild, no puedo lograr que el form fsMDIForm este inhabilitado (algo similar a lo que se realiza cuando se invoca un form con ShowModal), sin embargo, ya lo he tratado de hacer usando el ShowModal y no me funciona. Alguien podría decirme por que ? y que puedo hacer al respecto?, por favor.

De antemano muchas gracias, espero me hayan entendido.
Responder Con Cita
  #2  
Antiguo 06-12-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
Bueno, como ya sabes hay varios tipos de formularios, pero aun asi los voy a enumerar a continuación:

1) MDI Padre.

2) MDI Hijo.

3) Normal.

4) StayOnTop.

Y hay 4 tipos basicos de aplicaciones...

1) Aplicaciones MDI.

2) Aplicaciones SDI.

3) Aplicaciones Modales.

4) Aplicaciones de consola.

Cuando estas haciendo una aplicación MDI, lo mas común es que llamas desde el Form padre a los Form MDI Hijos, pero en algunos casos como el tuyo necesitamos llamar formularios como si se tratara de una aplicación Modal, para esto tenemos que decirle al Form "hijo" que ya no es un Form hijo MDI, si no que es un Form Normal... Para hacer eso vas a la propiedad FormStyle del Form "hijo" y le dices que es fsNormal y desde el "padre" llamas a ese Form "hijo" como si se tratara de una aplicación Modal común y corriente, asi por ejemplo:

Código Delphi [-]
FormularioHijoFrm := TFormularioHijoFrm.Create(Application);
FormularioHijoFrm.ShowModal;
FormularioHijoFrm.Free;

Y listo, espero que te sirva .
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #3  
Antiguo 06-12-2007
citlalliDgp citlalliDgp is offline
Miembro
 
Registrado: oct 2007
Posts: 38
Poder: 0
citlalliDgp Va por buen camino
Hola, ya he intentado lo que me dices y al mandar llamar el form hijo desde el form fsMDIForm me arroja un error que dice: "Cannot make a visible window modal", intenté usando este código:

Código Delphi [-]
procedure TForm2.Proveedores1Click(Sender: TObject);
begin
form4 := TForm4.Create(Application);
Form4.ShowModal();
Form4.Free;
end;

Incluso primero traté de cambiar la propiedad del form hijo a fsNormal desde que lo invoco:

Código Delphi [-]
form4 := TForm4.Create(Application);
Form4.FormStyle:=fsNormal;
Form4.ShowModal();
Form4.Free;

pero tampoco funcionó. Cambié la priedad formStyle desde antes de correr el programa, pero ninguno de estos intentos me resultó. Cual podrá ser el problema?
Responder Con Cita
  #4  
Antiguo 06-12-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
Verifica que ademas de que el "hijo" tenga el FormStyle en fsMDIChild, la propiedad Visible del form "hijo" este en False .
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #5  
Antiguo 06-12-2007
citlalliDgp citlalliDgp is offline
Miembro
 
Registrado: oct 2007
Posts: 38
Poder: 0
citlalliDgp Va por buen camino
Bien !!! Si me ha funcionado, jhonny. Muchas gracias.
Responder Con Cita
  #6  
Antiguo 06-12-2007
citlalliDgp citlalliDgp is offline
Miembro
 
Registrado: oct 2007
Posts: 38
Poder: 0
citlalliDgp Va por buen camino
Disculpa, y que puedo hacer si ahora desde este form hijo (que he convertido en fsNormal) trato de llamar otro form fsMDIChild que esté maximizado ?? Trato de invocarlo de la misma manera en que me habías dicho, pero no me funciona:

Código Delphi [-]
procedure TForm4.SpeedButton5Click(Sender: TObject);
begin
Form5 := TForm5.Create(Application);
end;

que puedo hacer ???
Responder Con Cita
  #7  
Antiguo 07-12-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
Bueno, la verdad es que nunca he llamado un Form de estilo fsMDIChild desde un formulario mostrado de forma modal, sinceramente no me cabe en la cabeza como podria quedar el asunto .
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #8  
Antiguo 07-12-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Por favor citlalliDgp, no dupliques hilos.

Es cierto que has hecho lo correcto, es decir: tenías una nueva duda y has creado un nuevo hilo, pero al mantener este hilo con la nueva duda, tenemos hilos duplicados.

Como tú mismo estas viendo, al tener hilos duplicados es muy difícil seguir la evolución del problema planteado, amén de dificultar las búsquedas de otras personas con tu misma inquietud.

En el otro hilo te he contestado, espero te sirva.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
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
Formulario modal o no? fedelphi OOP 1 23-05-2007 07:30:35
MessageBox Modal userlazarus Varios 2 15-11-2006 21:28:39
Ventana modal nenufer Varios 4 25-04-2006 22:02:55
problema con ventana Modal ingel Varios 2 19-12-2005 23:52:54
Formulario modal jzk OOP 2 22-12-2004 12:01:07


La franja horaria es GMT +2. Ahora son las 03:50:01.


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