Конференция "Компоненты" » Не наследовать [D7, WinXP]
 
  • Егорка (04.12.09 16:22) [0]
    свойства предка. Возможно ли ?
    Например листбокс без итемов.
    Вопрос из разряда можно\нельзя и как, а не зачем и с какой целью.
  • DimaBr © (04.12.09 16:49) [1]
    Наследуетесь от предыдущего предка, обычно это Custom класс и не публикуете требуемые свойства
  • Медвежонок Пятачок © (04.12.09 17:00) [2]
    нельзя.
    если есть класс, то он как минимум наследник tоbject.
    и все что в нем есть, все наследуется.
  • Егорка (04.12.09 17:05) [3]
    я тока задумался о компонентах
    этот Custom класс есть у всех стандартных(виндовых) элементов ?
    или он предок сразу нескольких элементов, и если можно пример как убрать из листбокса например items и OnStartDock например
  • Егорка (04.12.09 17:07) [4]

    > Медвежонок Пятачок

    меня интересуют только публишедные свойства которые в дизайнтайме на форме
  • Медвежонок Пятачок © (04.12.09 17:08) [5]
    листбокс без итемс - это tedit
  • Медвежонок Пятачок © (04.12.09 17:09) [6]
    меня интересуют только публишедные свойства которые в дизайнтайме на форме

    по барабану.
    наследуются ВСЕ свойства ВСЕ методы и ВСЕ события
  • Егорка (04.12.09 18:46) [7]

    > листбокс без итемс - это tedit

    мемо без итемс - это tedit

    вопрос не в отсутствии вообще а в невидимости этих свойств объектинспекторе и форме
  • Медвежонок Пятачок © (04.12.09 18:52) [8]
    невидимость это одно.
    а ненаследование это совсем другое.
  • Егорка (04.12.09 20:56) [9]
    ну как это называется пофиг,нужно чтоб выборочно скрывать публишедные свойства, делая их например пабликными, вот как хачу узнать
  • DimaBr © (07.12.09 09:35) [10]
    Для того чтобы свойства отображались/не отображались в инспекторе объектов, у каждого типа из них должен быть зарегистрирован собственный редактор свойства, который, собственно, и умеет рисовать это свойство на инспекторе объектов.

    Для всех простых свойств и некоторых сложных этот редактор уже написан и регистрировать самостоятельно ничего не надо.

    В некоторых случаях требуется собственный редактор свойств, тогда "компоненто-писатель" создаёт его, регистрирует в системе и прекрасно пользуется.

    Регистрация для свойства (типа) редактора типа NIL - означает что это свойство не будет отображаться в инспекторе, так как, как нарисовать его среда не знает.

    В вашем случае, если вы хотите создать новый класс, в котором нет некоторых свойств из предыдущего класса, следует внимательно посмотреть на родителя того класса от которого вы наследуетесь
    Например
    TListBox = class(TCustomListBox)


    Если унаследоваться от TCustomListBox и не публиковать некоторые свойства, то они отображаться в инспекторе не будут.


    > нужно чтоб выборочно скрывать публишедные свойства, делая их например пабликными


    Так к сожалению нельзя. Нельзя понизить видимость свойства
 
Конференция "Компоненты" » Не наследовать [D7, WinXP]
Есть новые Нет новых   [134466   +3][b:0][p:0.001]