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

Вниз

Управлять именем объекта в ходе выполнения программы   Найти похожие ветки 

 
Proxytel ©   (2007-02-27 09:15) [0]

Есть например 20 TImage. Необходимо управдять ими программно используя имя.

Например есть Image1, Image2, ... , Image20. Я хочу переберать их в цикле:
for i:=1 to 20 do
 Image{i}.Picture...

:)))
Что-то вроде этого...


 
TRUNK ©   (2007-02-27 09:22) [1]

Что-то вроде этого:


for i:=1 to 20 do
 FindComponent("Image"+IntToStr(i)).Picture...


 
ЮЮ ©   (2007-02-27 09:47) [2]


> Управлять именем объекта в ходе выполнения программы


Лучше управляй объектом :)

Image1, Image2, ... , Image20 ни что иное, как ссылки на объекты TImage, созданные в IDE. Создать нужное количество можно и в RunTime, не кидая 20 раз компонент с палитры. В этом случае имя ему вообще ни к чему.

for i:=1 to 20 do
  Image[i].Picture...

т.е. Image это должен быть array of  TImage или массив ссылок на экземпляры TImage. Если сами экземпляры создает Delphi, т.е. это Image1, ... , Image20 созданные в IDE, то заполнить этот массив единожды как в [1]:
 for i:=1 to 20 do
   Image[i - 1] := TImage(FindComponent("Image"+IntToStr(i));

если создавать в RunTime, то, естественно,
   for i:=1 to 20 do begin
     Image[i - 1] := TImage.Create(...);
     ...
   end;

В обоих случаях, далее уже используешь Image[Index]


 
Proxytel ©   (2007-02-27 09:53) [3]

Понял
Спасибо!



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

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

Наверх




Память: 0.47 MB
Время: 0.037 c
15-1171890958
TIF
2007-02-19 16:15
2007.03.18
Оцените работу WEB-дизайнера (меня то есть :-)


15-1171895181
Riply
2007-02-19 17:26
2007.03.18
Не знаю что делать. Помогите.


2-1172159524
Dennis Pakseew
2007-02-22 18:52
2007.03.18
Как сделать кнопку объемной?


15-1171726858
nali
2007-02-17 18:40
2007.03.18
Посоветуте прогу для чтения с порченного DVD


8-1152996420
@!!ex
2006-07-16 00:47
2007.03.18
Упаковка звука.