![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
hug |
|
||||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 27.7.2007 Репутация: нет Всего: нет |
есть структурка:
Вот как мне в эту структурку прочитать данные. Если известны имена которые нужны читать
Мне необходимо считывать значение параметром из структуры, обращаясь к поле структуры по имени
Вот примерно чтобы хотелось сделать. Как превратить в рабочий код |
||||||
|
|||||||
aktuba |
|
|||
![]() Смышленный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1915 Регистрация: 24.4.2006 Где: Планета Земля Репутация: 16 Всего: 38 |
Никак!!!
-------------------- ![]() |
|||
|
||||
hug |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 27.7.2007 Репутация: нет Всего: нет |
ок как обращаться к переменным не напрямую, а как к строчным значениям?
|
|||
|
||||
Grigory |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 22.7.2006 Где: Москва Репутация: нет Всего: нет |
Ну там все достаточно просто ![]() ![]() |
|||
|
||||
hug |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 27.7.2007 Репутация: нет Всего: нет |
Жду время)
|
|||
|
||||
MetalFan |
|
|||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 62 Всего: 128 |
Grigory, не городи ерунды. сказано - нет возможности обращаться к переменным по их строковым псевдонимам во время выполнения программы
т.е. нельзя написать так:
разве что к published св-вам класса Это сообщение отредактировал(а) MetalFan - 2.8.2007, 15:32 -------------------- There are always someone smarter than you... |
|||
|
||||
EvilsInterrupt |
|
|||
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 3 Всего: 9 |
hug,
Извините, но я так и не понял зачем это вам так нада? Никакой гибкости от этого не получите, а вот изврату очень даже получите! Опишите, что вы хотите решить или чем упростить себе жизнь хотите, быть может вы получите более лучшее решение чем вы хотели бы, а это ведь всегда приятно! |
|||
|
||||
hug |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 27.7.2007 Репутация: нет Всего: нет |
Расскажите как обращаться к publushed полям класса по имени |
||||
|
|||||
EvilsInterrupt |
|
|||
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 3 Всего: 9 |
hug, Почитай в Ксавье Пачеко "Delphi 5 для разработчика", том 2 про свойства-массивы.
Это тебе очень многое даст или наведет на мысль к примеру: objOfDB.FieldValues['ID_Param']; - видел наверное при работе с базами,это свойство-массив при работе с TjanXmlParser2: edParamId.Text := XmlParam.attribute['ID']; Тоже свойство-массив |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Это возможности так называемой RTTI - информации о типах времени исполнения. В делфи для обращения к свойствам по их строковому имени используется встроенный модуль TypInfo.pas. Достаточно его открыть и не нужна никакая справка, там очень звучные названия функций. Типа GetPropList и т.д. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
MetalFan |
|
|||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 62 Всего: 128 |
бред. у ObjectPascal'евсого массива не может быть строкового индекса) там просто св-во с параметром (псевдомассив чтоли)... -------------------- There are always someone smarter than you... |
|||
|
||||
EvilsInterrupt |
|
||||
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 3 Всего: 9 |
MetalFan, Это есть! Называется оно "свойство-массив". Внизу в коде видишь property Coordinates[Index: Integer], вот это и есть свойство-массив! Позволяет не только принимать Integer, но также можно принять strings, как это сделано в FieldValues при работе с TOraQuery, да и не только с ним
по теме:
и это есть в справке!!! зы: Правда пока я это нашел в справке от BDS2006 Architect я мозк убил ((( Но оно же есть! ))) Это сообщение отредактировал(а) EvilsInterrupt - 3.8.2007, 12:41 |
||||
|
|||||
aktuba |
|
|||
![]() Смышленный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1915 Регистрация: 24.4.2006 Где: Планета Земля Репутация: 16 Всего: 38 |
А где в примере строки??? -------------------- ![]() |
|||
|
||||
MetalFan |
|
||||||||||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 62 Всего: 128 |
это из другой оперы. данная возможность позволяет н-ким свойствам "обслуживаться" одной функцией. согласен. внешне свойство-массив выглядит как массив. в т.ч. со строкой в качестве "индекса". выдержка по теме:
см.подчеркнутый текст. это я и имел ввиду. -------------------- There are always someone smarter than you... |
||||||||||
|
|||||||||||
EvilsInterrupt |
|
||||
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 3 Всего: 9 |
aktuba, млин ))) Ща блин, покажу я вам строки
![]() у TjanXMLNode2 обладачет таким своейством:
и вот как его применяю:
Ну а всем известно, что Variant содержит в себе не только varInteger, но и строки! Добавлено через 2 минуты и 7 секунд Автору темы: Тебе тута написали прилично, садись читать хелп и Пачеко, думаю того что написали тебе должно хватить для реализации твоих мыслей! |
||||
|
|||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |