Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.12.2010, 14:54   #1
WarHamster
Пользователь
 
Регистрация: 09.08.2010
Сообщений: 48
По умолчанию Строка как имя обьекта

Есть какая-нибуть функция или способ, чтоб строка фоспринималась как имя обьекта? Конкретно сейчас у меня куча Edit-ов, нужно из 'Edit'+inttostr(x) получить имя обьекта EditX
WarHamster вне форума Ответить с цитированием
Старый 12.12.2010, 14:55   #2
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Нет. У вас не верный подход, пересмотрите подход к поставленной задачи.
BOBAH13 вне форума Ответить с цитированием
Старый 12.12.2010, 14:58   #3
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

в рантайме у переменных нет имен.
но однако у компонентов есть имя, это св-во Name.

Цитата:
нужно из 'Edit'+inttostr(x) получить имя обьекта EditX
получить имя?
вы его итак получаете кодом
может нужно получить этот самый Эдит?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 12.12.2010, 18:13   #4
xrob
Форумчанин
 
Регистрация: 18.10.2010
Сообщений: 419
По умолчанию

с вашего позволения перефразирую вопрос,
кажется я понял, чего хочет автор,
да и мне самому это интересно.

как достучаться до объекта, с помощью его имени в виде стринга.
например, есть form1.label1, возможно ли к нему обратиться как-то так:
Код:
str:='label1';
form1.(str).caption

или

form1.('label'+'1').caption
на flash, например это делается так:

_root['test']._x = 10 // этот код присваивает значение '10' свойству x в объекте _root.test
xrob вне форума Ответить с цитированием
Старый 12.12.2010, 18:34   #5
Bright-rider
Форумчанин
 
Регистрация: 09.07.2010
Сообщений: 102
По умолчанию

x:=1
TButton(Self.FindComponent('Button' + IntToStr(x))).Captio:='Smile';
Будет так
Buttob1.Caption='Smile'
Если я не ошибаюсь
___________
Если помог, весы слева нажмите.
Вам несложно, а мне приятно
Bright-rider вне форума Ответить с цитированием
Старый 12.12.2010, 18:39   #6
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Цитата:
кажется я понял, чего хочет автор,
Все поняли давно и ответ дали во втором посте. В нативным приложениях нет имен переменных - есть только адреса.

Конечно можно все переменные обернуть в запись или класс... но это идиотизм.
p51x вне форума Ответить с цитированием
Старый 12.12.2010, 20:40   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
В нативным приложениях нет имен переменных - есть только адреса.
Ну это громко сказано... Не поспоришь но и RTTI не отменишь
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Имя обьекта класса во врема выполнения программы. с++ ahab Помощь студентам 2 06.03.2010 13:23
Как узнать имя юзера Betty Общие вопросы Delphi 4 07.01.2010 10:50
Строка состаяния или загрузачная строка Sergeu Мультимедиа в Delphi 8 27.08.2008 10:32
Как получить имя файла Crazyman Работа с сетью в Delphi 4 11.07.2008 00:47
Как узнать имя файла??? Shurik Hacker Работа с сетью в Delphi 3 20.11.2007 17:06