![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Collections ! [D6]
malkolinge © (2003-01-22 19:56:00)Господа !
почему в редакторе коллекций светится имя класса элемента коллекции ? а значение присвоенное
DisplayName нифига не дает
зы
Спасибо Юрию Зотову за статью о коллекциях !
Юрий Зотов (2003-01-23 13:24:00) [1]Sorry, сначала невнимательно прочитал вопрос. Я говорил об имени класса коллекции в Инспекторе Объектов, а Вы спрашивали о имени класса ЭЛЕМЕНТА коллекции в редакторе коллекций.
У элемента коллекции заместите метод GetDisplayName, а в нем напишите:
if MyName = "" then
Result := inherited GetDisplayName
else Result := MyName
где MyName - имя, которое Вы хотите видеть в редакторе. Больше ничего не надо, никакие присвоения не нужны.
malkolinge (2003-01-23 11:46:00) [2]?????????????????????????????????????????????
malkolinge (2003-01-23 11:44:00) [3]
> А ты Override точно написал после procedure ?
После какой процедуры ? (Простите за ламерство) !
Nick_N_A (2003-01-23 05:23:00) [4]А ты Override точно написал после procedure ?
Юрий Зотов (2003-01-22 22:27:00) [5]И Вам - за добрый отзыв.
Это поведение стандартного редактора TClassProperty, от которого наследуется стандартный редактор коллекций. Чтобы его изменить, нужно написать (и зарегистрировать) редактор-потомок, у которого замещен метод GetValue (см. в DsgnIntf.pas).
Только не советую - отнаследоваться от стандартного редактора коллекций не так-то просто. Овчинка не стоит выделки.
А DisplayName - это другое. Его мы, например, видим в окне самого редактора коллекций, когда редактируем Item"ы.