这可能吗?我真的想让我的wxPython程序(因为它们只适用于windows)使用玻璃主题。
另外,如果可能的话,有没有办法让Vista中的对话框看起来像那些没有编码太多自定义内容的新对象?
答案 0 :(得分:2)
有点晚了,但无论如何我都会回答......
没有内置的方法可以使用wxPython在Windows上的Aero主题中利用玻璃效果。但是,您可以与Win32 API一起破解。您要查找的两个功能是DwmIsCompositionEnabled
和DwmExtendFrameIntoClientArea
。只需使用前者检查Aero是否已启用,然后调用窗口上的GetHandle()
方法并将结果传递给后者以获得玻璃效果。
我从未使用过wxPython,所以它可能比那更复杂(你可能需要做更多的互操作),但这应该让你开始。如果您需要有关互操作部分的帮助,请查看Win32 programming in Python。
答案 1 :(得分:1)
wxPython基于wxWidgets库,因此它的功能基于wxWidgets的功能。
我没有在wxWidgets网站上看到任何关于“玻璃”界面的内容,但我确实看到它支持纹理,并且可以制作控件/表单semi-transparent。你应该能够毫不费力地模拟玻璃界面。
答案 2 :(得分:0)
wxPython应该复制操作系统的本机小部件支持的任何主题。现在看起来像什么? wxPython演示看起来是否合适?可能没有包含清单...我所知道的是我的wxPython程序在Windows 7上看起来“正确”,除非我使用通用小部件。