0

这可能吗?我真的想让我的 wxPython 程序(因为它们只在 Windows 上工作)使用 glass 主题。

另外,如果可能的话,有没有一种方法可以使对话框看起来像 Vista 中的那些新对话框,而无需编写大量自定义内容?

替代文字 http://imgkk.com/i/soYWuf.jpg

4

3 回答 3

2

有点晚了,不过我还是会回答的...

没有内置的方法可以使用 wxPython 在 Windows 上利用 Aero 主题中的玻璃效果。但是,您可以使用 Win32 API 破解一些东西。您正在寻找的两个功能是DwmIsCompositionEnabledDwmExtendFrameIntoClientArea。只需使用前者检查是否启用了 Aero,然后调用GetHandle()窗口上的方法并将结果传递给后者以获得玻璃效果。

我从未使用过 wxPython,所以它可能比这更复杂(您可能需要做更多的互操作工作),但这应该可以帮助您入门。如果您需要有关互操作部分的帮助,请查看Python 中的 Win32 编程

于 2010-08-31T09:35:30.743 回答
1

wxPython 是基于 wxWidgets 库的,所以它的能力是基于 wxWidgets 的能力。

我在 wxWidgets 网站上没有看到任何关于“玻璃”界面的具体内容,但我确实看到它支持纹理,并且可以将控件/表单设置为semi-transparent。您应该能够毫不费力地模拟玻璃界面。

于 2009-11-10T21:06:18.620 回答
0

wxPython 应该复制操作系统的本机小部件支持的任何主题。现在它看起来像什么?wxPython 演示看起来对吗?清单可能不包括在内……我所知道的是,除非我使用通用小部件,否则我的 wxPython 程序在 Windows 7 上看起来“正确”。

于 2010-08-31T13:46:42.080 回答