IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

> Как обратится к компоненте по имени?(-:
BlackNightFear
сообщение 30.11.2004 20:07
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 48
Пол: Мужской

Репутация: -  0  +


Блин, вышибло меня сегодня че-то, как обращаться к компоненту через имя в переменной String?
Помню делал я это недавно тока забыл как и где именно это делал.... НО ПОМНЮ ТОЧНО МОЖНО ТАКОЕ СДЕЛАТЬ!
Тока как?(-:
Например есть несколько компонентов TImage, как через обращаться к любому по имени через строку: "Image1", например? Отличия в именах: Image1, Image2, ..., ImageN
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
ShadowWatcher
сообщение 1.12.2004 11:02
Сообщение #2


Новичок
*

Группа: Пользователи
Сообщений: 29
Пол: Мужской

Репутация: -  -1  +


Я бы делал примерно так:
Код

Function FindComponent(Root:TComponent;ComponentName:String):TComponent;
Var
 i:Integer;
Begin
 If Root.Name = ComponentName Then
   Result := Root
 Else
   For i:=0 To Root.ComponentsCount - 1 Do
   Begin
     Result := FindComponent(Root.Components[i],ComponentName);
     If Result <> Nil Then
       Exit
   End;
 Result := Nil
End;


А затем вызов функции типа
Код

Var
 LabelStringName : String;
Begin
 LabelStringName := 'Label1';
 (FindComponent(Form1,LabelStringName) As TLabel).Caption := 'sdffff';
End;
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 26.07.2025 17:22
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"