Текущий архив: 2002.10.07;
Скачать: CL | DM;
Вниз
Создание компонентов Найти похожие ветки
← →
I_Gris (2002-09-27 13:36) [0]Необходимо создать компоненты на основе стандартных VCL-компонентов, при этом, требуется, чтобы некоторые унаследованные published-свойства, например свойство HelpKeyword класса TControl, у новых комопонентов не отображались в Object Inspector"е. Переписывать TControl ради переноса HelpKeyword из
published в private не хочется, и делать их readonly тоже некрасиво.
← →
Anatoly Podgoretsky © (2002-09-27 13:45) [1]Чем они тебе так насолили, что с глаз долой
← →
MBo © (2002-09-27 13:46) [2]http://delphi.mastak.ru/articles/advice/index.html
← →
I_Gris (2002-09-27 14:06) [3]просто данные компоненты предполагается использовать в некотором дизайнере форм (да хотя бы в той же Delphi), на выходе у которого
лишь *.dfm-файл, а другое приложение эти dfm"ки со специальными компонентами будет загружать. Т.е. зачем тот же HelpKeyword, если в приложении-загрузчике и вовсе help"а может не быть.
← →
Юрий Зотов © (2002-09-27 15:30) [4]Регистрируем пустой редактор свойства (nil вместо класса редактора) - и все, свойство исчезает. Из Инспектора, естественно, а не совсем.
← →
I_Gris (2002-09-27 15:52) [5]По поводу статьи "Как скрыть свойства объекта?" ( http://delphi.mastak.ru/articles/advice/index.html). В Delph"овом хелпе
написано:
"...You can increase the visibility of a member in a descendant
class by redeclaring it, but you cannot decrease its visibility. For
example, a protected property can be made public in a descendant,
but not private. Moreover, published members cannot become public in a
descendant class. ..."
Т.е. можно расширить видимость члена класса-потомка, но нельзя ее
уменьшить. Например, protected-свойство можно сделать public в
потомке, но не private. Кроме того, published-свойства НЕ МОГУТ
стать public в классе-потомке.
А вот последний вариант ("Регистрируем пустой редактор... ")помог. Большое спасибо.
Страницы: 1 вся ветка
Текущий архив: 2002.10.07;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.026 c