PDA

Ver la Versión Completa : Problemas con ventanas MDI


mRoman
04-02-2005, 17:59:13
Hola que tal !.

Espero q alguien me ayude.....tengo un problema con ventanas. Cree un formulario que es el MENU y cree otro que será la forma para los CATALOGOS, este último lo utilizaré para ir generando otros formularios para catalogos heredando las caracteristicas, la bronca es la siguiente, en el formulario MENU lo tengo con fsMDIForm y el de cátalogo lo tengo con fsMDIChild, al momento de correr el programa, la forma del catalogo me aparece encima del menu, es decir detras esta el menu y delante de él está el del catalogo, al correr el programa aparecen las dos formas juntas.

Lo que quiero es que se active el cátalogo cuando le de un click en un botón o seleccionando la opción correspondiente, esto último q les comento no hay bronca, ya lo he hecho pero con ventanas que no tenian estas propiedades, ahora lo utilicé porque quiero q mientras este abierto el catalogo de x cosa, me pueda abrir otra ventana de catalogo o cualquier otra ventana de mi aplicación.....minimizarla y elegir otra opcion, q abra otra ventana....no sé si me expliqué, espero que haya sido asi, ya que necesito resolver este problema que para uds. puede ser muy simple, pero para mi no, ya que estoy aprendiendo a programar en Delphi....(se nota?)...jeje.

Gracias.....espero me hechen la mano

Aztaroth
05-02-2005, 00:01:23
En el Menu Tool/Options te apareceran todas las ventanas que estan disponibles en tu aplicacion basta con que pongas hacia la derecha las que no quieres que se creen automaticamente, ahora cuando quieras ver el formulario lo unico que tienes que hacer es verficar si ya existe.




procedure btnClick(Sender as Object);
begin
if FindComponent('hijaForm') = nil then
hijaForm := ThijaForm.Create(Self);

hijaForm.Show; (No utilices ShowModal, por que te va a marcar error)
end;


cuando quieras cerrar tu forma hija tendras que decirle a ella misma que se autodestruya cuando se cierre

procedure ThijaForm.OnClose;
begin
Action := caFree;
end;




Espero que esto resuleva tu problema.