On 6 April 2012 15:54, John Fabiani <jo...@jfcomputer.com> wrote: > Hi, > > I want to create a class that inherits two other classes. > > class NewClass( A,B) > > But both "A" and "B" contain a method with the same name ("onKeyDown"). > > If my "NewClass" does not contain something to override the methods which one > would be called if > > myinstance = NewClass() > > myinstance.onKeyDown()
Hi John, Easy enough to sort out with a little experiment: >>> class A(object): def doit(self): print "A" >>> class B(object): def doit(self): print "B" >>> class C(A,B): def __init__(self): self.doit() >>> c=C() A > Second to insure the right one is called is it possible to do the following > > NewClass(object): > > def onKeyDown(self, event): > b.onKeyDown(event) > Perhaps this helps, some: >>> class D(A,B): def __init__(self): self.doit() def doit(self): print "D" super(D, self).doit() >>> d=D() D A >>> class E(A,B): def __init__(self): B.doit(self) >>> e=E() B >>> Best, Brian vdB _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor