![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Подскажите .... [D6, Win2k, WinXP]
Goga © (2005-03-09 14:02:00)Какой класс или тип данных позволяет обращаться к своим свойствам как по имени, так и по номеру?
Goga (2005-03-09 14:54:00) [1]Index specifiers это помоему то, что нужно. Огромное спасибо.
MU (2005-03-09 14:37:00) [2]а может, TList, TCollection?
Digitman (2005-03-09 14:32:00) [3]открой справку "Delphi Lanquage Reference" на тему "Index specifiers" - может, тебе именно ЭТО нужно ?
Vlad (2005-03-09 14:29:00) [4]
> Goga (09.03.05 14:23) [4]
> И обращаться как к массиву.
Что-то новенькое :-)
Массив только тебе придется самому формировать.
Получить свойство по имени (как стринговой константе) можно с помощью функций GetPropInfo, GetOrdProp, GetEnumProp etc. (см. модуль TypInfo.pas)
Goga (2005-03-09 14:29:00) [5]Но пронумерованные свойства не информативны. А заполнение свойств удобнее когда они предствлены в виде массива.
Digitman (2005-03-09 14:27:00) [6]
> Goga (09.03.05 14:18) [2]
> Это как в TDataSet обращение к значению поля. Можно указать
> FieldByName('id') или Field[0].
'id' - это не имя свойства
[0] - это не номер свойства
'id' - это "имя" некоего объекта класса TField в коллекции TFields
[0] - это индекс того же объекта в той же коллекции
Anatoly Podgoretsky (2005-03-09 14:25:00) [7]Пронумеровать можно, вот по этому номеру и обращайся. Но нумерация это не массивы, а нумерация.
Goga (2005-03-09 14:23:00) [8]У объекта есть определенный набор свойств. Их можно пронумеровать от 0 до Count-1. И обращаться как к массиву.
Anatoly Podgoretsky (2005-03-09 14:20:00) [9]Любой, только по номеру непонятный термин
Goga (2005-03-09 14:18:00) [10]Это как в TDataSet обращение к значению поля. Можно указать FieldByName('id') или Field[0].
Digitman (2005-03-09 14:14:00) [11]
> так и по номеру
что такое "номер свойства" ?