如何检查启用了哪个XP主题

时间:2009-10-28 15:19:54

标签: python c windows winapi windows-themes

我有一个wxPython,它完美地适用于窗口xp主题,但是切换到'经典主题'时富文本cntrl出现没有边框。我可以启用经典主题的边框但是为了

Q1。我需要知道是否启用了经典主题。

问题2.我也不确定有多少不同的主题可能会破坏我的应用外观。那么最好的解决方法是什么呢?

Q3。我可以为给定的应用程序强制执行主题吗?例如从python我可以加载任何Windows DLL和调用函数,但有没有这样的方式?

编辑:在我的情况下ctypes.windll.UxTheme.IsThemeActive()工作

1 个答案:

答案 0 :(得分:1)

经典主题更像是一个非主题。 您可以通过调用UxTheme.dll

中的IsAppThemed()来检查经典主题 因此,应该没有理由担心不同的主题。

最后,应用程序获得的唯一选择是是否尝试并支持主题 - 通过包含指定要使用新公共控件的清单。不包含清单的应用程序永远不会成为主题。这样做的应用将根据用户偏好设置主题。