PDA

Ver la Versión Completa : Cerrar Formularios hijos independientemente


morfeo21
29-05-2008, 18:55:55
DELPHI
!Urgente!,. Una consulta . como puedo cerrar independientemente formularios hijos .
He creado una aplicacion MDI y formularios hijos. el detalle esta en lo siguiente:
- De los formularios hijos he generado reportes(QuickReport) con la misma caracteristica fsMDIChild
Es decir ; del primer formulario hijo lanzo la generacion de un reporte bazado en parametros:
Meses : uno del mes de Enero otro del mes de Febrero y asi sucesivamente.
- Ahora yo puedo minimizar estos reportes dentro de mi aplicacion .
pero quisiera que al momento de cerrar el primer formulario que genero los reportes , se cerracen primero
los reportes hijos.
- Ahora quisiera hacer esto sin que se cierre los demas formularios hijos que tenga abiertos sus propios reportes.

he estado intentado hacer esto; pero al dar cerrar . se cierran todos los formularios que esten abiertos.
el codigo que he empleado es este

procedure TfrmTgen622u.BitBtn2Click(Sender: TObject);
var
i : Integer;
begin
for I := 0 to Application.MainForm.MDIChildCount - 1 do
Application.MainForm.MDIChildren[i].release;
end;

Hay alguna manera de saber cuales son solo los reportes que pertenecen a quien los genero?

roman
29-05-2008, 19:13:27
Al crear un reporte hazlo así:


// Crear reporte
TfrmReporteA.Create(Self);


Al pasarle Self como parámetro al constructor del reporte, te aseguras que al destruir el formulario que los creo, también se destruyen los formularios que creó.

// Saludos

morfeo21
29-05-2008, 20:27:44
No puedo hacer lo que tu me indicas
pues el QuickReport ya lo tengo creado visualmente y diseñado
yo solo lo invoco asi

procedure TfrmTgen622u.btnImprimirClick(Sender: TObject);
begin
if SetDataReporte() then
qrpTipoCambio.Preview
else
ShowMessage('No existe informacion a mostrar');
end;