FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
#1
|
||||
|
||||
Hola,
Acabo de tratar de "reproducir" el problema, pero, no he podido. He creado un proyecto, y, en su formulario principal he añadido un "TListView" al que a su vez he añadido un "item". A continuación he creado un nuevo formulario heredándolo del primero, y, he añadido otro "item" al "TListView". Y todo va bien, es decir, como se espera: el "TListView" del segundo formulario muestra el "item" añadido en el formulario "padre" y el "item" que añadí (en tiempo de diseño) en el formulario "hijo". Algo se escapa por ahí... PD. He usado Delphi 2007 for Win32. |
#2
|
|||
|
|||
Hasta aqui llego yo tambien, esto esta bien. ahora si, con todo esto que has hecho, intenta eliminar todos los componentes del "hijo" y añade 1 mas en padre, que es lo que quiero es que me vuelva a cargar los de "padre". En canvio se queda en blanco, ya que se ve que 1 vez modificando Data:{} de hijo no se volvera a cargar de padre, pero alomejor hay algun manera, aparte de ir a DFM a quitarselo.
|
#3
|
||||
|
||||
Hola,
A ver. Cuando heredas el "TListView" estás heredando un objeto "completo" y por decirlo así independiente. Si tú haces cambios en el objeto padre, estos cambios se evidenciarán en el hijo (*), porque el hijo hereda del padre, esto es lógico, ¿verdad? Pero, si haces cambios en el objeto hijo... pasa lo que tiene que pasar: los cambios persisten, porque, el objeto hijo no deja de ser independiente. Así que lo que ocurre no es un error, sino que es lo que se espera que pase. Tú heredas los "items" del objeto padre, pero, si borras dichos "items" en el objeto hijo, ¿quién es el objeto padre para añadir de nuevo los "items"? Ya lo hizo en un principio, así que si el hijo quiere deshacerse de ellos... es problema del hijo. ¿No? (*) Ojo, los cambios se evidenciarán en el hijo si este no ha sido creado previamente. Se entiende que los cambios en el padre (una vez en tiempo de ejecución) no afectarán al objeto hijo, puesto que este es ya un objeto aparte. Última edición por dec fecha: 07-11-2007 a las 11:45:20. |
#4
|
|||
|
|||
Cita:
Ya que imaginemos que lo habia modificado o borrado 1 elemento sin querer. |
#5
|
||||
|
||||
Hola,
Pues... me temo que no exista forma, al menos tal y como planteas el asunto. O tal vez algún otro compañero pueda decir algo al respecto. En mi opinión, y, sin saber muy bien qué trata de conseguirse, cuál es el objeto de todo esto, pienso, a bote pronto, que existen otras formas de hacer "persistir" información. Por ejemplo, si es preciso que un determinado "TListView" pueda "recuperar" sus datos originales, bastaría con guardar la información en un archivo, por ejemplo, con la información que nos interese, de modo que podamos luego recuperarla cuando nos sea precisa. Lamento no poder decir otra cosa, pero, tal vez lo dicho te ayude en algo. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Clases y herencia | dec | HTML, Javascript y otros | 1 | 16-01-2007 10:53:36 |
Herencia | miguel867 | OOP | 6 | 12-01-2007 23:08:20 |
Herencia... | dunia_lv | C++ Builder | 3 | 29-05-2006 22:43:00 |
Herencia de Forms | La__X | Varios | 1 | 20-01-2006 18:50:24 |
Herencia | vegalisandro | OOP | 8 | 15-09-2003 14:30:42 |
|