![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
La herencia visual en Delphi es muy transparente, no se porque lo haces por un camino tan complicado (¿Conoces File \ New \ Aplicación \ Clase a Heredar?)
Ten en cuenta que la herencia visual, no solo queda guardada la unit, también queda en el DFM. Además de cambiar la clase desde la unit, tendrías que modificar el dfm: object TFrameEx: TFrameEx por inherits TFrameEx: TFrameEx Cita:
Saludos!
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Última edición por delphi.com.ar fecha: 15-09-2004 a las 20:58:25. |
|
#2
|
||||
|
||||
|
Cita:
// Saludos |
|
#3
|
||||
|
||||
|
Cita:
)
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
|
|
#4
|
|||
|
|||
|
Cita:
Partiendo de un Frame ya hecho, extraigo todo lo que puede ser común para todos los demás (código y compos) y lo meto en otro: FrameBase. A partir de FrameBase, creo varios Frames mediante herencia visual. Copio los compos y el código propios de cada Frame (esto es, lo que no tiene FrameBase) a los Frames heredados. Finalmente, sustituyo los frames originales por los frames equivalentes pero que derivan de FrameBase en el proyecto. Identico proceso sería para los Forms... La cuestión que planteaba era si se conocia algún medio aparte del que yo empleo para hacer esto más llevadero (demasiado cut&paste y los eventos dan más trabajo aún). Por eso, sugeria no emplear herencia visual directamente, para no tener que hacer un Frame nuevo sino trabajar con el original. Lo que me faltaba era saber que había que modificar también el .dfm, aparte del .pas. Creo que lo probaré de esta manera. Por otro lado, creo que no hay medio de usar herencia visual con el TActionManager (entre otros) y es una pena, pues me rompe el diseño que me había propuesto y me obliga a replicar los componentes que no puedo heredar con el conseguiente trabajo extra. Un saludo y muchas gracias a los dos, que sois unos ases, de verdad. |
|
#5
|
||||
|
||||
|
.... Y dice el novato..... crea un component Template para despues meterlo dentro del Tframe.
Lo acabo de probar y funciona, de hecho el Component Template tenia un Tframe dentro y al ponerlo TODO en un nuevo TFrame, Delphi lo incrustó sin problemas, previo mensaje: " El Component Template tiene un Tframe FrameExploreTAble (el embebido) desea añadirlo a su proyecto?" Respondiendo SI, pues sin problemas. Con esto te olvidas del copy & paste, aunque no sé si será viable. |
|
#6
|
|||
|
|||
|
El comentario de Lepe me recuerdó al instante el siguiente artículo de Ian Marteens:
http://www.marteens.com/trick2a.htm Hasta ahora no había usado los component templates, pero me serán muy utiles en mi labor migratoria (parecemos cigüeñas), tras comprobar que efectivamente es un técnica más potente que copiar y pegar. Gracias de nuevo!!! A los tres!!! |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|