Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

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

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

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 24.01.2009, 19:41   #1
chandrasecar
Форумчанин
 
Аватар для chandrasecar
 
Регистрация: 03.10.2008
Сообщений: 180
Вопрос Циклически задать однотипные параметры для многих компонентов единого класса

Здравствуйте.
Возникла необходимость задавать параметры для компонентов циклически. Имеется множество компонентов одного класса, например Image (Img1, Img2 ... Img n). В каждый Image из dll нужно загрузить картинку (как загружать картинку из dll известно). Получаетя довольно большой код. Поэтому обращаюсь с таким вопросом.
Предполагается что код должен где-то так выглядеть:
Код:
for i:=1 to n do begin
. . . . . . . . . 
здесь какой-то универсальный обработчик
. . . . . . . . . 
end;
где n - число компонентов одного класса
возможно следует создать процедуру в которой будет две входящие переменные: название компонента типа TImage и ссылка на ресурс в dll (картинка) типа String, которая будет загружаться в (Image), и подставить в цикл. Но как таким образом перебрать все компоненты?

Последний раз редактировалось chandrasecar; 24.01.2009 в 19:52.
chandrasecar вне форума Ответить с цитированием
Старый 24.01.2009, 21:47   #2
Dj_smart
Капсула от спама
Форумчанин
 
Аватар для Dj_smart
 
Регистрация: 04.03.2008
Сообщений: 779
По умолчанию

Вот, пожалуйста
Код:
var
  Lab: TComponent;

for i:=1 to n do begin
  Lab := FindComponent('Img' + IntToStr(n));
  with (Lab as TImage) do begin
    // здесь делаете что хотите
    
  end;
end;
Если данный ответ не столь конкретен, как Вы желаете его увидеть, возможно необходимо поразмыслить, стоит ли вопрос того, чтобы о нём спрашивать на форуме?
CncFiles.ru - бесплатный файловый хостинг
Dj_smart вне форума Ответить с цитированием
Старый 25.01.2009, 00:10   #3
chandrasecar
Форумчанин
 
Аватар для chandrasecar
 
Регистрация: 03.10.2008
Сообщений: 180
По умолчанию

Извините, не получается. TImage и TComponrnt - не согласуемые классы. Мне необходимо обратиться к свойству Image1.Picture.Graphic.
chandrasecar вне форума Ответить с цитированием
Старый 25.01.2009, 00:12   #4
Dj_smart
Капсула от спама
Форумчанин
 
Аватар для Dj_smart
 
Регистрация: 04.03.2008
Сообщений: 779
По умолчанию

Может вы призабыли, что такое with ?
Код:
var
  Lab: TComponent;

for i:=1 to n do begin
  Lab := FindComponent('Img' + IntToStr(n));
  with (Lab as TImage) do begin
    Picture.Graphic = blah-blah-blah    
  end;
end;
Если данный ответ не столь конкретен, как Вы желаете его увидеть, возможно необходимо поразмыслить, стоит ли вопрос того, чтобы о нём спрашивать на форуме?
CncFiles.ru - бесплатный файловый хостинг
Dj_smart вне форума Ответить с цитированием
Старый 25.01.2009, 00:18   #5
chandrasecar
Форумчанин
 
Аватар для chandrasecar
 
Регистрация: 03.10.2008
Сообщений: 180
По умолчанию

Действительно забыл Даже не догадался какую функцию он играет. Как говорят: "глаз замылился".
Благодарю Вас!
chandrasecar вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С++ перегрузка операций для шаблонного класса TIN Помощь студентам 7 29.03.2009 14:24
Auto LISP. Как программно задать координаты для команд типа SELECT Stilet Софт 0 10.07.2008 14:28
OnClick для массива компонентов Dj_smart Компоненты Delphi 5 30.04.2008 13:16
задать свойство Caption на Русском для кнопки mbYes в сообщении MessageDlg Plastik-X БД в Delphi 4 27.04.2008 12:52


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS
Здесь нужно купить рекламу за 7 тыс руб в месяц! )
пишите сюда - alarforum@yandex.ru
ИКС 840