Как проверить, какая тема XP включена - PullRequest
0 голосов
/ 28 октября 2009

У меня есть wxPython, который отлично работает на тему Window XP, но при переключении на «классическую тему» ​​форматированный текст cntrl появляется без рамки. Я могу включить границу для классической темы, но для этого

Q1. Мне нужно знать, включена ли классическая тема.

Q2.Я также не уверен, сколько там может быть разных тем, которые могут испортить внешний вид моего приложения. так что может быть лучшим способом обойти это?

Q3. Могу ли я применить тему для данного приложения? например из python я могу загрузить любую Windows DLL и вызывать функции, но есть ли такой способ?

Редактировать: в моем случае ctypes.windll.UxTheme.IsThemeActive () работал

1 Ответ

1 голос
/ 28 октября 2009

Классическая тематика - больше не тема. Вы проверяете классические темы, вызывая IsAppThemed () в UxTheme.dll

Поэтому должно быть мало причин для беспокойства по поводу различных тем.

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

...