我们知道wxCallAfter从函数到函数工作:
def onButton(self, event):
wx.CallAfter(self.functionOne)
def functionOne(self):
print "functionOne fired!"
如何使用wx.CallAfter使用我的对象调用 init 的动作? 我按下一个按钮,然后更改 init 类的列表。
以下是我的进展:
class LeftPanel(wx.Panel):
def __init__(self,parent, *args, **kwargs):
wx.Panel.__init__(self,parent)
self.radioLabel = self.myListener(self,parent,*args, **kwargs)
print 'Line 28 is %s' % self.radioLabel ## Line 28 is None, looking for a list!
以下同一小组:
def myListener(self, message, arg2=None):
print '378 left listener try is %s' % message
self.radioLabel = message
try:
wx.CallAfter(self.__init__)
except TypeError:
return
回溯:
lambda event: event.callable(*event.args, **event.kw) )
TypeError: __init__() takes at least 2 arguments (1 given)
答案 0 :(得分:1)
你没有调用一个类,你实例化它。因此,如果您需要实例化一个类,我会在一个方法中执行此操作:
def someMethod(self):
obj = SomeClass(*args, **kwargs)
然后你可以用wx.CallAfter调用方法:
wx.CallAfter(someMethod)