首页 > 解决方案 > 子类化 win32com 对象

问题描述

我在 Microsoft PowerPoint 对象库上运行了 win32com makepy.main(),它生成了这个文件。查看它生成的类以及在 vba 文档中找到的类。它似乎为 PowerPoint 对象库中的每个对象创建了类。

我的问题是,我可以对这些类进行子类化吗?如果可以,我该怎么做?我不知道这将如何工作。我对 Slide 对象进行子类化,如何告诉 PowerPoint 返回我的子类幻灯片对象?运行 makepy 后,它生成了一个 gen_py 文件夹,可以在其中找到该文件。

标签: pythonms-officewin32com

解决方案


这是因为您正在使用与win32com. 每当您使用早期绑定时,它会自动生成 python 文件,然后可以使用这些文件来帮助完成代码和类似的事情。

现在,您提到了一个有趣的问题,即我们如何才能使用subclass这些自动生成的文件。问题是这可能会变得复杂,因为在某些情况下,如果父对象存在,您只能获取一个对象。我发现我必须自动生成对象模型中存在的所有 COM 对象。这样,如果我调用一个返回另一个对象的方法,我就不会在早期绑定对象和后期绑定对象之间得到这种混合。

subclass我猜在一天结束时,一旦你有了这个对象,你到底想做什么。


推荐阅读