Problemas con clases bases
Hola a todos, bueno días, tengo un problema que no entiendo como resolverlo:
mi problema es el siguiente: Tengo una clase base llamada frmMenuB esta es una forma que tiene encapsulado varios procedimientos y funciones que ocupo es MDIForm, tambien tengo otra clase base llamada frmCataBesta es MDIChild. Creo una aplicación con instancias de estas dos clases bases y quedan de la siguiente manera: frmMenuPrincipal que es inherited de frmMenuB frmCatClientes que es inherited de frmCataB frmCatVendores que es inherited de frmCataB frmCatProveedores que es inherited de frmCataB bueno para no hacer muy largo el cuento tengo el siguiente problema 1. como puedo hacer para saber que forma frmCatClientes,frmCatVendedores o frmCatProveedores esta activa en mi frmMenuPrincipal, si tengo abierta las tres, ya se que con ActiveMDIChild se cual esta activa de las MDIChilds pero en que evento lo cacho desde el menu principal?, lo estaba haciendo desde OnPaint pero no me resulta. 2. como hacer para que las acciones de frmCataB sean leidas desde frmMenuB para que yo las pueda tener en las instancias y no tenga que volver a escribir cada accion en las formas heredadas? espero haber sido claro, espero sus comentarios. |
Cita:
|
Cita:
en mi clase base frmCataB tengo una action llamada acActionCerrar, esta accion lo que hace es que cierra la forma con Self.close ok?. En mi clase base frmMenuB tengo un boton que solo aparece cuando abro una forma descendiente de frmCataB, a este boton le quiero pegar la action, es decir frmMenuB.boton.action = frmCataB. acActionCerrar; si relaciono estas clases bases lo puedo hacer sin problemas, pero cuando hago instancias me marca error, por obvias razones. bueno quiero hacer esto en las clases bases porque no quiero repetir este codigo en todas mis formas descendientes de frmCataB. |
Cita:
En todo caso, ¿no puedes hacer la asignación por código al momento de crear el catálogo? // Saludos |
Solucuion alternativa
Cita:
Econtre una forma de hacerlo aunque un poco rimbombante pero me funciono, lo que hice fue lo siguiente: extender la TForm a modo de agregar como propiedades en runtime las acciones que habran de ejecutarse y llamarlas desde la otra forma.
esto esta buenisimo, si alguien puede extender en esto pues sería fabuloso. Saludos y gracias. |
La franja horaria es GMT +2. Ahora son las 13:50:28. |
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