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

Ваш аккаунт

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

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

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

Подсветить группу компонент другим цветом

27K
25 сентября 2008 года
alexmalyaev
35 / / 25.07.2008
Здравствуйте.У меня есть пример:

//Сдвигаются влево контролы у которых Tag = 1
for(int i = 0; i < ComponentCount; i++)
if(Components->Tag == 1)
((TControl *)Components)->Left +=10;

Хотелось бы примерно так:
for(int i = 0; i < ComponentCount; i++)
if(Components->Tag == 1)
((TControl *)Components)->Color ==TColor(255,255,255);

но не работает. Подскажите пожалуйста как к примеру Editы c Tag=1 подсветить другим цветом.
288
25 сентября 2008 года
nikitozz
1.2K / / 09.03.2007
Все дело в том, что в иерархии компонентов вплоть до TWinControl свойство Color объявлено как protected.
Если у вас только Edit'ы имеют tag = 1, тогда все просто и строка будет иметь вид
 
Код:
((TEdit *)Components)->Color = TColor(255,255,255);

В принципе данная строка работает и для большинства остальных стандартных компонентов, т.к. все они наследуют свойство Color от TControl, так что разыменование проходит безболезнено. Но это как минимум не очень красиво.
27K
25 сентября 2008 года
alexmalyaev
35 / / 25.07.2008
Огромное спасибо
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог