Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Почему SpeedButton меняет свой цвет ? [D7, WinXP]


kyn66 ©   (2006-02-20 11:53:00) 

Добрый день. На форме лежит три кнопки SpeedButton с различными цветовыми Captions. На форме лежит XPManifest. Почему, если кнопки лежат на одной панели - цвета нормальные, стоит эту панель с кнопками вложить еще в одну - цвета меняются... Спасибо.


kyn66   (2006-02-21 18:17:00) [1]

Я пробывал положить и на Nootebook -эффект тот-же, все наверное дело в третьем ряду нахождения кнопок. Для простоты, сами можете положить кнопки на панель, эту панель на другую, дать кнопка цветные Caption и убедиться в чем дело. Ведь парент родителя срабатывает прямо сразу в DesignTime, а тут имеено при компиляции эффект проявляется.


s&r   (2006-02-21 15:29:00) [2]

Или покопайся в исходниках ThemeManager  - поисщи отключение отрисовки контролов.


s&r   (2006-02-21 15:28:00) [3]

Сложно сказать - это уже вопросы к программистам из Microsoft ©
=)
Возможно используй вместо TPanel какой-то другой компонент или отлавливай сообщение WM_THEMECHANGED и сам отрисовывай как надо....
Только я даже не представляю как....


kyn66   (2006-02-21 12:54:00) [4]

LДа, действительно, до 7 я использовал ThemeManager и было удобно. А в 7 его уже нет. а из-зи TPanel - со включенными стилями она становится прозрачнойТогда почему, когда панель одна - все нормально..., когда две - уже нет?


s&r   (2006-02-21 11:10:00) [5]

Раньше был компонент ThemeManager (он вроде начиная с 7й Delphi включен в нее, только его самого нету вроде :( ), так там можно было выбирать какие котролы отрисовывать, используя силь XP, а какие - нет.
Кстати этот глюк скорее всего не из-зи SpeedButton, а из-зи TPanel - со включенными стилями она становится прозрачной (т.е. кардинально меняется ее отрисовка...)


antonn   (2006-02-21 10:43:00) [6]

kyn66 ©   (21.02.06 9:05) [5]
Выходит - сырой компонент... Если только самому его доделать

кого доделать? XPManifest? :)))


kyn66   (2006-02-21 09:05:00) [7]

Вот и я в этом убеждаюсь. Выходит - сырой компонент... Если только самому его доделать. Хотя в нем особо большой выгоды нет. Изменяет только кнопки. Вот есть компоненты, которые практически все контролы приводят к виду XP, независимо от среды.


Дмитрий Белькевич   (2006-02-21 01:36:00) [8]

XPManifest вот в этом проблема, скорее всего. XP может сама раскрашивать некоторые контролы, как ей нужно, вне зависимости от установок компоненты.


kyn66   (2006-02-20 15:38:00) [9]

У всех ParentFont = False;
А что сие выражение означает?
Да, потом еще восстановите шрифт у кнопок.


API   (2006-02-20 12:55:00) [10]

см. ParentFont у кнопок и панели, на которой они лежат.
Для Ваших целей - установите в False.
Да, потом еще восстановите шрифт у кнопок.


kyn66   (2006-02-20 11:58:00) [11]

Для того, чтобы было понятно - выкладываю картинку вопроса
http://yurec66.narod.ru/Vopros.jpg


Наверх

Титульная страница Поиск, карта сайта Написать письмо