Вверх ↑
Этот топик читают: Гость
Ответов: 5446
Рейтинг: 323
#61: 2009-03-13 14:14:24 ЛС | профиль | цитата
Netspirit, это особенность Windows. Читаем букварь.

MSDN писал(а):

If a window has a region applied to it, the UxTheme Manager assumes that this is a specialized window and the window will not use visual styles throughout its life.


MSDN писал(а):

Если к окну применен регион, UxTheme Manager (который и отвечает за стиль XP -- прим. перев.) считает это окно специальным, и окно не будет использовать визуальный стиль (стиль XP -- прим. перев.) на протяжении всей жизни этого окна



Т.е. либо region, либо XPStyle
карма: 1

0
Ответов: 4631
Рейтинг: 749
#62: 2009-03-13 14:27:14 ЛС | профиль | цитата
Огромное спасибо. Это обьясняет в чем дело. Но только непонятно: если применить функцию GetWindowRgn к только что созданной форме, она вернет "3" (0 - ошибка, 1 - нулевой регион, 2 - простой регион, 3 - сложный регион, если не ошибаюсь), это значит, что у формы уже есть какой-то регион. Но если скопировать его и присвоить ей обратно (GetWindowRgn-->SetWindowRgn) - теряется стиль. В чем же дело? Наверное, стиль ХР будет только у окна, которому был назначен регион при создании.
карма: 26

0
Ответов: 5446
Рейтинг: 323
#63: 2009-03-13 15:23:44 ЛС | профиль | цитата
Netspirit, а шут его знает. Видимо, винда считает так: какой бы сложный ни был регион по-умолчанию, пусть будет у него стиль. А вот если окну меняют регион (пусть и на тот же самый), то стиля ему не видать до смерти.
карма: 1

0
Ответов: 4631
Рейтинг: 749
#64: 2009-04-21 14:08:40 ЛС | профиль | цитата
Обновил компонент. В связи с обсуждаемой выше проблемой добавил новое свойство Mode (подробнее - в Readme.txt).
Также в демонстрационную схему добавил анимированную заставку при запуске.
карма: 26

0
Разработчик
Ответов: 26163
Рейтинг: 2127
#65: 2009-04-21 14:33:41 ЛС | профиль | цитата
Перезалито на SVN
карма: 22

0
65
Сообщение
...
Прикрепленные файлы
(файлы не залиты)