Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-12-2019
PatatinPatatan PatatinPatatan is offline
Registrado
 
Registrado: dic 2019
Posts: 1
Poder: 0
PatatinPatatan Va por buen camino
¿Diferencia entre Owner y Parent al crear un componente en tiempo de ejecucion?

Es mi primer mensaje en este foro (o cualquier otro relacionado con la programacion) y aviso que NO soy programador ni pretendo serlo. Me intreresa la programacion como pasatiempo (aunque existe aquello de “El saber no ocupa lugar”) y como medio para crear alguna herramienta que me facilite la vida. Es probable que encuentre herramientas gratruitas o incluso de codigo abierto, pero prefiero interntar crearlas yo mismo.

He escojido C++ ya que , aunque he leido que el lenguaje no es el mas adecuado para iniciarse en el mundo de la programacion, parece que se generan ejecutables que son mas eficientes que por ejemplo los creados con C# o Java (entiendo la diferencia respecto a estos entornos) y que el codigo es portable a otras plataformas, aunque esto ultimo no es primordial para mis intereses ya que yo solo uso Windows, pero quizas en un futuro (espero que sea cercano) podria reusar el codigo creado por otros en proyectos de codigo abierto.

Y por ultimo, he escogido C++ Builder debido a que existe una version gratuita, pero sobre todo, debido a que se pueden crear interfaces graficas de usuario rapidamente (esto es lo que realmente me interesa)
--------------------------------------------------------------------------------------------------


En fin, despues de esta larga introducion aqui va mi pregunta:


¿Cual es la diferencia real entre Owner y Parent cuando se crea un componente en tiempo de ejecucion?

Segun he leido en un sitio de internet (he editado el tema debido a que el foro me dice que no puedo poner enlaces) el “Owner” se ocupa de llamar a los destructores y el “Parent” indica cual es el es control contenedor, pero yo he he creado un control derivado de TcustomListView (sin "Packages") y en el constructor (en tiempo de ejecucion) para el parametro Owner especifico un control secundario (Un TPanel) del formulario, pero al depurar veo que se llama al destuctor de mi control. Parece que algo no se ajusta al 100% a lo que he leido en el enlace que he (intentado) adjuntado.

¿Existe alguna diferencia en C++ Buider o quizas no comprendo algo respecto a los destructores de las clases derivadas o la jerarquia de los controles?
Responder Con Cita
  #2  
Antiguo 17-12-2019
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Cita:
Empezado por PatatinPatatan Ver Mensaje
...Segun he leido en un sitio de internet (he editado el tema debido a que el foro me dice que no puedo poner enlaces) el “Owner” se ocupa de llamar a los destructores y el “Parent” indica cual es el es control contenedor,...
Si, tratándose de VCL es básicamente así.

La propiedad Owner de TComponent, almacena al propietario del componente quien será responsable de llamar a la función miembro que destruirá el objeto creado. El propietario puede o no existir, si Owner es nulo, es decir que no existe; es nuestra responsabilidad destruir el componente creado.

La propiedad Parent de TControl, almacena el contenedor del componente creado, es decir el área donde será dibujado/visualizado dicho control.
Cita:
Empezado por PatatinPatatan Ver Mensaje
Segun he leido... para el parametro Owner especifico un control secundario (Un TPanel) del formulario, pero al depurar veo que se llama al destuctor de mi control.
Así es, tál como leíste, el propietario del componente se encargará de llamar al destructor.

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Propiedad Parent y owner cacu OOP 1 03-10-2008 20:57:52
Componente En Tiempo De Ejecucion grandmasterdari OOP 28 03-05-2008 20:55:03
restar horas y devolver la diferencia en tiempo entre ellas douglas OOP 1 24-10-2007 11:28:44
filtro entre dos tablas en tiempo de ejecucion Goyo OOP 16 26-09-2006 21:39:31
Crear componente Image en tiempo d Ejecucion Jessica666 Gráficos 6 30-05-2004 01:58:22


La franja horaria es GMT +2. Ahora son las 17:49:11.


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
Copyright 1996-2007 Club Delphi