Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Цикл по компонентам Image

29K
28 апреля 2011 года
asupdemon
29 / / 03.10.2008
Здравствуйте! У меня на форме расположено 4 компонента Image. Скажите пожалуйста можно ли организовать по ним цикл? Я просто не знаю как в цикле к ним обращаться (индекса у них нет). Рыл в инете, но везде говорится только про динамическое создание компонентов, а у меня они уже на форме.
11
28 апреля 2011 года
oxotnik333
2.9K / / 03.08.2007
цикл по
 
Код:
TComponent::ComponentsCount

и доступ к доченему компоненту:
 
Код:
TComponent::Component[int index]

с динамическим преобразованием к TImage
33K
28 апреля 2011 года
hivewarrior
205 / / 16.11.2010
Цитата: oxotnik333
цикл по
 
Код:
TComponent::ComponentsCount

и доступ к доченему компоненту:
 
Код:
TComponent::Component[int index]

с динамическим преобразованием к TImage



Не помешала бы еще проверка TComponent::ClassNameIs("TImage"), если заранее не известен индекс

7
28 апреля 2011 года
@pixo $oft
3.4K / / 20.09.2006
Да зачем?Привести TButton TImagee–это же так весело!:)
277
28 апреля 2011 года
arrjj
1.7K / / 26.01.2011
Можно ещё сначала создать массив имажей:
 
Код:
TImage **img=new TImage*[общее_количество_image];
for(int x=0;x<общее_количество_image;x+=1)
{
  TImage *tmp = dynamic_cast<TImage *>Form1->FindComponent("Image"+IntToStr(x+1));
  if (tmp)
    img[x]=tmp;
}

А потом юзать их как угодно.
29K
28 апреля 2011 года
asupdemon
29 / / 03.10.2008
Завтра попробую, отпишусь.
1.9K
29 апреля 2011 года
George22
91 / / 09.12.2007
Цитата: asupdemon
Здравствуйте! У меня на форме расположено 4 компонента Image. Скажите пожалуйста можно ли организовать по ним цикл? Я просто не знаю как в цикле к ним обращаться (индекса у них нет). Рыл в инете, но везде говорится только про динамическое создание компонентов, а у меня они уже на форме.



У них есть индех - это свойство tag. Присвой каждому Image свой tag и будет тебе счастье!

11
29 апреля 2011 года
oxotnik333
2.9K / / 03.08.2007
Цитата: George22
У них есть индех - это свойство tag. Присвой каждому Image свой tag и будет тебе счастье!


Что бы достучаться до этого свойства, нужно все таки сперва получить указатель на объект. И собственно вопрос был как получить эти объекты, дальше ими управлять - дело техники.
ЗЫ: к стати, а нафига вообще цикл по 4-м объектам, тем более созданным в дизайн-тайме. Указатели на них определены в в теле заголовочника. Зачем такой гемор по поиску того, что и так известно?

1.9K
29 апреля 2011 года
George22
91 / / 09.12.2007
Не мучайте человека, а то у него голова распухнет:

 
Код:
TImage *ImagePtr[4];

  ImagePtr[0]=Image1;
  ImagePtr[1]=Image2;
  ImagePtr[2]=Image3;
  ImagePtr[3]=Image4;

 for(int i=0;i<4;i++)
 ImagePtr->Visible =false;
29K
29 апреля 2011 года
asupdemon
29 / / 03.10.2008
Ну вообще то это приложение для моделирования автоперевозок, т.е. на форме расположены имаджи (4-самосвала, 2-погрузчика, 1-бульдозер, есть пункт погрузки и разгрузки) которые должны перемещаться по форме. Совет arrjj как раз подошёл для моей затеи. Не пробовал совет George22, но он вроде попроще для понимания. Всем большое спасибо!
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог