Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.09.14;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.038 c
3-1205766628
dest81
2008-03-17 18:10
2008.09.14
dbgrideh и фильтрация


15-1216620114
Vlad Oshin
2008-07-21 10:01
2008.09.14
Постоянно в памяти висит процесс WinWord.exe


2-1217926238
demon
2008-08-05 12:50
2008.09.14
Как узнать размеры окна через API?


3-1205241234
DmitriyG.
2008-03-11 16:13
2008.09.14
Отмена выполнения запроса


15-1216144094
ZIvas
2008-07-15 21: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
Английский Французский Немецкий Итальянский Португальский Русский Испанский