我正在使用wxpython来生成GUI。我正在做的程序结构如下所示。我为GUI的每个部分(class1和class2)都有一个类。我正在使用Panel类来创建这些部分。 class1和class2派生自另一个类(Group类)。我想动态地从其他派生类访问派生类的方法。所以,当我在classA.method1()时,我想调用classB.method3()。最好的方法是什么?
class Panel(wx.Panel):
def __init__(self, parent):
class1 = ClassA()
class2 = ClassB()
class Group(wx.Panel):
def __init__(self, parent, name):
.
.
.
class ClassA(Group):
def method1(self):
....
def method2(self):
....
class ClassB(Group):
def method3(self):
....
def method4(self):
....
答案 0 :(得分:0)
我假设您要调用类方法,而不是该类实例的方法。
从ClassA.method1(),ClassB应该是全局的,所以你要做的就是:
class ClassA(Group):
def method1(self):
classB.method3(someclass)
现在你要做的就是弄清楚你想要为'someclass'添加什么。如果method3从不使用'self',那么只需将其传递给None。如果ClassA兼容,那么你可以将它传递给'self'。否则,您需要传递一个ClassB实例。