2012-07-31 31 views

回答

4

基于源代码,我相信这是你会怎么做。

源代码: http://wxwidgets2.8.sourcearchive.com/documentation/2.8.7.1/classxrc_1_1XmlResource_4a0466d7ef7ac98ef7a9b8135a0c9339.html

def AddSubclassFactory(*args, **kwargs): 
    """AddSubclassFactory(XmlSubclassFactory factory)""" 
    return _xrc.XmlResource_AddSubclassFactory(*args, **kwargs) 

所以,你可以看到它正在寻找类型XmlSubclassFactory的对象。从文档(http://wxpython.org/docs/api/wx.xrc.XmlSubclassFactory-class.html),我们发现...

XmlSubclassFactory __init__(self) 

我们可以看到,对于XmlSubClassFactory的构造函数没有参数。所以我们创建一个XmlSubclassFactory的对象并创建一个资源来添加SubClassFactory。

import wx 
from wx import xrc 

scf = xrc.XmlSubClassFactory() 
resource = xrc.XmlResource("resource.xrc") 
resource.AddSubclassFactory(scf) 

不幸的是,我找不到Python示例。但是,我认为Perl模拟器非常接近。来自http://permalink.gmane.org/gmane.comp.lang.perl.wxperl/477

Wx::XmlResource::AddSubclassFactory(MyFactory->new); // perl 

这与我们正在做的非常相似。所以在阅读源代码和那个例子之间,我认为这个片段是一个很好的开始。祝你好运!