Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-01-2008
Avatar de elcolo83
elcolo83 elcolo83 is offline
Miembro
 
Registrado: feb 2007
Ubicación: Argentina
Posts: 65
Poder: 18
elcolo83 Va por buen camino
Ocultar propiedades de la herencia

Hola a todos... quiesiera saber como puedo ocultar algunas propiedades de la herencia. El tema es que estoy haciendo un componente derivado del TListBox y quisiera que por ejemplo "itmes" no lo vea el programador ya que lo administra el mismo componente... de esa forma evique que me agreguen items a la lista... como se hace????
Responder Con Cita
  #2  
Antiguo 09-01-2008
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 24
maeyanes Va por buen camino
Hola...

Desgraciadamente no se pueden ocultar propiedades públicas en clases heredadas...

O mejor dicho, no se puede bajar el nivel de visibilidad de una propiedad o método en una clase heredada... esto es, si una propiedad es públished en una clase, no la puedes declarar como protected en una clase descendiente...

La opción que tienes es checar si la clase padre de TListBox tiene la propiedad Items declarada como protected y heredes desde esa clase...


Saludos...
Responder Con Cita
  #3  
Antiguo 09-01-2008
Avatar de elcolo83
elcolo83 elcolo83 is offline
Miembro
 
Registrado: feb 2007
Ubicación: Argentina
Posts: 65
Poder: 18
elcolo83 Va por buen camino
gracias por tu respuesta maeyanes.... estaba pensando... y cambiar o sobreescribir las funciones add y delete de la propiedad items??? tampoco se puede?
Responder Con Cita
  #4  
Antiguo 09-01-2008
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 24
maeyanes Va por buen camino
Hola...

El detalle es que los métodos Add y Delete pertenecen a la clase TStrings de la cual proviene la propiedad Items, por lo que no puedes redefinirlos desde la clase heredada de TListBox...


Saludos...
Responder Con Cita
  #5  
Antiguo 09-01-2008
Avatar de elcolo83
elcolo83 elcolo83 is offline
Miembro
 
Registrado: feb 2007
Ubicación: Argentina
Posts: 65
Poder: 18
elcolo83 Va por buen camino
Muchas gracias por aclararme las dudas...

Saludos
Responder Con Cita
  #6  
Antiguo 09-01-2008
[basti] basti is offline
Miembro Premium
 
Registrado: ago 2004
Posts: 388
Poder: 20
basti Va por buen camino
En vez de heredar de TListBox, puedes heredar de TCustomListBox. Las clases TCustomXxxx son las mismas que sus correspondientes sin el custom. La diferencia está en que las propiedades no son públicas. Las que te interese hacer públicas las puedes declarar en la sección Published.
__________________
Saludos.
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
Ocultar propiedades JulioGO OOP 6 26-12-2007 17:50:02
Herencia miguel867 OOP 6 12-01-2007 23:08:20
Acceso a las propiedades de un objeto desde el editor de propiedades Hugo OOP 0 24-11-2006 12:58:22
Ocultar propiedades heredadas en controles ElDuc Varios 1 04-10-2006 20:10:08
Herencia vegalisandro OOP 8 15-09-2003 14:30:42


La franja horaria es GMT +2. Ahora son las 16:22:00.


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