Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.01.16;
Скачать: CL | DM;

Вниз

Прорисовка заголовка окна в различных стилях.   Найти похожие ветки 

 
Юрий Зотов ©   (2004-01-06 12:00) [0]

По ряду причин требуется прорисовать системный заголовок окна "ручками". Для определения размеров и расположения элементов заголовка (рамки, иконки, кнопок управления окном) используются вызовы GetSystemMetrics с параметрами, определяемыми стилем окна.

В итоге "классический" заголовок рисуется нормально (то есть, неотличимо от системной прорисовки), но при включении тем в XP геометрия "съезжает", причем в зависимости от текущего стиля окна съезжает совершенно по-разному. Что для меня странно - я полагал, что GetSystemMetrics должна выдавать правильные данные при любой теме или без темы вообще.

Если подкорректировать прорисовку, то добиться нужного результата удается - но тогда, естественно, съезжает геометрия заголовка при прорисовке в классическом стиле. Значит, прорисовка должна быть условной и в связи с этим возник вопрос.

Как установить, что мы работаем под под XP - это не проблема, а вот как определить, что включена какая-то схема и определить правильную для нее геометрию элементов заголовка?

Или я вообще не в ту сторону подался? В общем, нужно добиться, чтобы прорисованный вручную заголовок при любых раскладах был неотличим от системного. Не сталкивался ли кто-то с такой же или похожей задачей?

Пытался покопаться в MSDN, но безуспешно (видимо, потому, что он у меня не шибко свежий).

Заранее спасибо.


 
REA ©   (2004-01-06 12:04) [1]

Pls. детализируйте ваши изыскания в отношении вызовов GetSystemMetrics и "коррекции" ее показаний. Т.е. что куда съезжает.


 
Игорь Шевченко ©   (2004-01-06 12:23) [2]

В XP GetSystemMetrics подменяется функцией ThemeGetSystemMetrics из UxTheme.DLL. Она же экспортирует функции IsAppThemed и GetWindowTheme. Может, чем поможет


 
REA ©   (2004-01-06 12:36) [3]

По наводке ИШ в MSDN за апрель 2003:
User Interface Design And Development\Windows Shell\Shell Reference\Visual Styles Reference



Страницы: 1 вся ветка

Текущий архив: 2004.01.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.029 c
3-49403
Alex-kosmonavt
2003-12-16 18:42
2004.01.16
Редактор справочников


3-49437
Прямой
2003-12-18 14:24
2004.01.16
TADOStoredProc как правильно?


1-49496
S@shka
2004-01-03 15:39
2004.01.16
Можно ли свободно использовать TStringList в разных потоках?


3-49445
Гоша
2003-12-18 10:24
2004.01.16
не могу из Win2K работать с базами расположенными на сервере


1-49633
Condor
2004-01-04 16:11
2004.01.16
Почему растет объем картинки?