Вниз
Скачать: CL | DM;

Как для свойства типа перечисление отобразить НЕ ВСЕ элементы   Найти похожие ветки 

← →
testpu   (2002-09-21 20:47) [0]

Пример: свойство BorderStyle для формы может принимать одно из следующих значений bsNone, bsSingle, bsSizeable, bsDialog, bsToolWindow, bsSizeToolWin. То же свойство для TEdit принимает только два значения bsNone, bsSingle.
Если я наследую свой класс от TEdit, то в окне Property выпадающий список состоит из двух значений, а если от TCustomEdit, то выпадающий список включает в себя все допустимые значения (6 шт.), а мне нужно только 2. Теоритически я понимаю, что что-то нужно делать с TEnumProperty, но в исходниках компонентов я ничего такого не нашел. Знающие люди, подскажите, что нужно делать?


← →
Юрий Зотов ©   (2002-09-21 21:28) [1]

У формы и Edit это РАЗНЫЕ типы:

Форма:
TFormBorderStyle = (bsNone, bsSingle, bsSizeable, bsDialog, bsToolWindow, bsSizeToolWin);

Edit:
TBorderStyle = bsNone..bsSingle;

Можно (и нужно) пойти тем же путем. Если же написать свой редактор, недопустимое значение можно будет присвоить в run-time. С вытекающими ошибками.

А TEnumProperty надо искать не в исходниках компонентов, а в модуле DsgnIntf. Там же подробные комментарии и куча примеров.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.009 c
3-7855
B-Ars
2002-09-11 12:17
2002.10.03
Проблемы с добавлением поля синхронного просмотра в Run-Time


4-8238
Yuri Btr
2002-08-15 15:17
2002.10.03
Выбор папки с подпапками


3-7770
Sour
2002-09-10 20:13
2002.10.03
Индексы и уникальность по полям varchar с размерностью около 300


1-8018
lety
2002-09-20 18:39
2002.10.03
ошибка в MaskEdit


14-8122
Txxx
2002-09-06 23:20
2002.10.03
Как выложить свою программу в кладовку?




   Наверх