C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
FindChildControl, Как найти Control а форме ?!
Treumer
Отправлено: 23.02.2005, 13:48


Станционный диспетчер

Группа: Участник
Сообщений: 92



Попробовал найти TLabel с помощью FindChildControl,
не находит...
Тут вот
http://www.agincourtsystems.com/vcl_components.htm
нашел такое:
QUOTE

TWinControl::FindChildControl Always Returns NULL for TLabel Children
Many controls use FindChildControl in the Loaded method to access the addresses of their child controls. Some controls may return NULL. TLable is one of these.

A work around is to iterate through Controls:
CODE

{ TControl * NextCntrl = (TControl *)FindChildControl(ANames);

if(NextCntrl == NULL)
{  for (int m=0; m<ControlCount; m++) // for each child
  { if (Controls[m]->Name == ANames)
    { NextCntrl = Controls[m];
      break;
    }
  }
}


Но и это не помогает, т.к. у меня на форме полно вложенных элементов и тот что мне нужнен не лежит прямо на самой форме.

Как же его отыскать ?!
AVC
Отправлено: 23.02.2005, 14:07


Ветеран

Группа: Модератор
Сообщений: 1583



Обойти дерево. Поищите на форуме — писано неоднократно.
Treumer
Отправлено: 23.02.2005, 14:11


Станционный диспетчер

Группа: Участник
Сообщений: 92



QUOTE (AVC @ 23/02/2005, 14:07)
Обойти дерево. Поищите на форуме — писано неоднократно.

О!
Нашлось таки!
https://rxlib.ru/forums/index.php?ac...267ad5a2f2c1cfa

Отредактировано Treumer — 23/02/2005, 14:17

Вернуться в Вопросы программирования в C++Builder