Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.09.14;
Скачать: CL | DM;

Вниз

Обратиться к объекту по имени хранящемся в строке   Найти похожие ветки 

 
Viod ©   (2008-08-06 08:38) [0]

Здравствуйте.
Такой вопросик: есть ли в Делфи конструкция позволяющая обратиться к объекту с помощью его имени хранящегося в строковой переменной?
Что-то вроде ObjectById(ObjectId:string):TObject


 
Сергей М. ©   (2008-08-06 08:42) [1]

Объект не имеет имени.


 
Viod ©   (2008-08-06 08:52) [2]


var panel:array of TPanel;
    p_name:string;
begin
SetLength(panel,length(panel)+1);
panel[0]:=TPanel.Create(form1);
panel[0].Name:="mypanel";
panel[0].Parent:=Form1;
p_name:=panel[0].name;

Допустим мне нужно изменить цвет панели:
panel[0].color:=clWhite;
А как мне это сделать используя p_name:string, а не panel[0]


 
Сергей М. ©   (2008-08-06 08:57) [3]

Name - это не имя объекта, а опубликованное свойство компонента.

см. Компонент-владелец.FindComponent("Имя искомого компонента, которым владеет компонент-владелец")


 
Viod ©   (2008-08-06 09:02) [4]

Спасибо.


 
Anatoly Podgoretsky ©   (2008-08-06 09:23) [5]

Сергей М. ©   (06.08.08 08:57) [3]
У panel нет владельца, а найти владельца в массиве требуется его сканирование, правда и смысл в этом случае исчезает, какая разница что искать, имя или это имя через свойство Panel[i].Owner -> FindComponent. Только лишнии телодвижения.


 
Сергей М. ©   (2008-08-06 09:35) [6]


> Anatoly Podgoretsky ©   (06.08.08 09:23) [5]


> У panel нет владельца


С какого вдруг перепугу ?)

Компонент он и в Африке компонент и Owner"а у него пока еще никто не отменял.


> Только лишнии телодвижения


Я их не делаю, и так жарко на дворе, это автора приспичило)


 
Vlad Oshin ©   (2008-08-06 10:01) [7]

function FindGlobalComponent(const Name: string): TComponent;


 
Anatoly Podgoretsky ©   (2008-08-06 10:24) [8]


> С какого вдруг перепугу ?)

А с каких пор у динамических массивов появились вдруг владельцы?


 
Anatoly Podgoretsky ©   (2008-08-06 10:25) [9]


> Я их не делаю, и так жарко на дворе, это автора приспичило)

Это он зря, не понимает, что творит.


 
Сергей М. ©   (2008-08-06 10:37) [10]


> у динамических массивов появились вдруг владельцы?
>


А, ты вон о чем ..

Я и не посмотрел на объявление этого идентификатора)



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

Текущий архив: 2008.09.14;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.04 c
15-1216318636
@!!ex
2008-07-17 22:17
2008.09.14
Дизайн детей


2-1217337692
Kolan
2008-07-29 17:21
2008.09.14
Работа с веб-сервисом.


15-1216718835
dle
2008-07-22 13:27
2008.09.14
DataLife Engine Free


3-1205998904
denmin
2008-03-20 10:41
2008.09.14
Не постятся данные в PostgreSQL.


2-1217839681
DeeNamid
2008-08-04 12:48
2008.09.14
Пинг





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский