![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TComponent->Enabled ??? [D6, WinXP]
Bloodrayne © (2006-06-21 23:05:00)Здравствуйте.
У меня такой вопрос:
Мне в программе нужно сначала дизейблить, потом обратно енейблить набор различных компонент (пока TTabSheet, TMenuItem, TButton, но потом могут добавиться ещё).
Я делаю так:
Создаю вектор из TComponent*, в который запихиваю необходимый список компонент. Потом
for(int i =0; i < MyVector.size(); ++i)
{
MyVector[i]->Enabled = true;//или false;
}
Но тогда вылезает ошибка, ведь у TComponent нет свойства Enabled.
Если написать так:
((TButton*)MyVector)->Enabled = ...;
то работает, но только с TButton и всеми его наследниками.
Пробовал посмотреть иерархию наследований:
TMenuItem сразу от TComponent
остальные через другие.
Как поступить?
Phoroon~ (2006-06-22 00:17:00) [1]А ты проверяй наличие свойства!
Типо вот так вот:
TypInfo.GetPropInfo (My_Component.ClassInfo, 'Hint') <> nil
(точно не помню, но это определяет только published свойства)