PyWin32:Windows经典主题
在PyWin32的示例文件夹里,有一个叫win32gui_dialog.py的例子,它使用了经典的Windows控件。请问,能不能用PyWin32显示Windows Vista风格的按钮,如果可以的话,应该怎么做呢?我现在用的是ActivePython 3.1,这个有影响吗?
示例:
3 个回答
0
你有没有试过用'winxpgui
'这个模块,而不是'win32gui
'这个模块呢?
我不太确定有没有'winvistagui
'或者'win7gui
'这样的模块,但'winxpgui
'是存在的,可能会有效,因为它包含了一个清单。
2
你需要在Python解释器旁边添加一个清单文件,这个文件里要指定一个正确版本的ComCtl32.dll。幸运的是,你不需要去修改解释器的可执行文件本身。
- 在包含
python.exe
的文件夹里,创建一个名为python.exe.manifest
的文件。 - 在这个文件里放入以下内容:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity processorArchitecture="x86" version="5.1.0.0" type="win32" name="python.exe"/> <description>Python</description> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" publicKeyToken="6595b64144ccf1df" language="*" processorArchitecture="x86"/> </dependentAssembly> </dependency> </assembly>
你可能还想把python.exe.manifest
这个文件复制一份,命名为pythonw.exe.manifest
。
2
简短的回答是:绝对可以。
我知道这是可能的,因为我见过有人这样做过。不过,我对具体怎么做还不是很确定。
至少,你可以使用 IronPython,通过使用 clr 来利用 Windows 自带的 .NET 框架。