![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| gamedeveloper |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 42 Регистрация: 8.7.2007 Репутация: нет Всего: нет |
Как можно заставить, например, кнопку поддерживать темы Windows?
|
|||
|
||||
| korian |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 651 Регистрация: 8.3.2008 Где: Украина, Харьков Репутация: 4 Всего: 17 |
ключевое слово для поиска - Manifest
|
|||
|
||||
| BorisVorontsov |
|
|||
![]() Thinker ![]() ![]() Профиль Группа: Комодератор Сообщений: 714 Регистрация: 3.11.2005 Где: Молдавия, г. Киши нёв Репутация: 4 Всего: 10 |
Может, автор про Custom Control'ы? Тогда рисуй DrawTheme*-функциями.
-------------------- [code=cpp] const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out); for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl; [/code] |
|||
|
||||
| gamedeveloper |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 42 Регистрация: 8.7.2007 Репутация: нет Всего: нет |
Спасибо, korian. Пару изменений в ресурсах проекта - и всё работает.
Но мне интересно, можно ли реализовать поддержку тем другим способом? |
|||
|
||||
| LED |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 29.2.2008 Репутация: 1 Всего: 1 |
2 gamedeveloper: не мог бы сказать какие конкретно изменения и какую среду ты используешь?
|
|||
|
||||
| gamedeveloper |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 42 Регистрация: 8.7.2007 Репутация: нет Всего: нет |
Изменения: поддержка приложением тем Windows XP
среда: Microsoft Visual Studio 2005. Но я уже писал, что всё работает. Сейчас меня просто интересует вопрос, можно ли это сделать через функции WinApi (если такие есть) или для того чтобы реализовать поддержку тем, нужно по другому компилировать проект и поэтому никакого WinApi быть не может? |
|||
|
||||
| BorisVorontsov |
|
|||
![]() Thinker ![]() ![]() Профиль Группа: Комодератор Сообщений: 714 Регистрация: 3.11.2005 Где: Молдавия, г. Киши нёв Репутация: 4 Всего: 10 |
Совсем не обязательно. Достаточно, что бы проект импортировал какую-нибудь функцию из comctl32. В таком случае можно будет просто добавить к exe-файлу *.manifest-файл (полное имя exe-файла + расширение .manifest). Это обычный xml-файл (с тем же текстом, что в ресурсах). -------------------- [code=cpp] const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out); for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl; [/code] |
|||
|
||||
| gamedeveloper |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 42 Регистрация: 8.7.2007 Репутация: нет Всего: нет |
Я просто имел ввиду: можно ли это сделать не используя манифесты?
|
|||
|
||||
| UTeX |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 22.3.2008 Репутация: нет Всего: нет |
скорее всего делается это так
+ каждому контролу посылается сообщение о смене темы WM_THEMECHANGED http://www.wasm.ru/forum/viewtopic.php?id=25712 |
||||
|
|||||
| UTeX |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 22.3.2008 Репутация: нет Всего: нет |
||||
|
||||
| gamedeveloper |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 42 Регистрация: 8.7.2007 Репутация: нет Всего: нет |
спасибо, всем.
|
|||
|
||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |