1

在 PyWin32 demos 文件夹中,win32gui_dialog.py示例使用了经典的 windows 控件。是否也可以使用 PyWin32 显示Windows Vista主题按钮,如果可以,如何显示?我正在使用 ActivePython 3.1,如果这有什么不同的话。

样本:

PyWin32 http://imagespark.net/files/old.png

4

3 回答 3

2

简短的回答:一个响亮的“是”。

我知道这是可能的,因为我以前见过它。但我并不完全确定它是如何完成的。

至少,您可以使用IronPython并通过使用 clr 来使用 Windows 的内置 .NET 框架。

如果您对 IronPython 不感兴趣,那么您是否可以考虑类似easyGUITkInter的东西?

于 2009-12-28T11:32:14.970 回答
2

您需要将指定正确版本的 ComCtl32.dll 的并行清单添加到 Python 解释器。幸运的是,无需更改解释器可执行文件本身。

  • python.exe.manifest在包含python.exe.
  • 将以下内容放入该文件中:
<?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.manifestpythonw.exe.manifest

于 2009-12-28T12:21:37.853 回答
0

您是否尝试过使用 ' winxpgui' 模块而不是 ' win32gui' 模块?

我不确定是否有 ' winvistagui' 或 ' win7gui' 模块,但 ' winxpgui' 确实存在并且可以工作,因为它包含清单。

于 2010-01-03T08:29:17.397 回答