"Che M" <[EMAIL PROTECTED]> wrote > Thank you, Alan. I started by adding a method called addPoints() > to my > class as you recommend. But now I don't know how to pass a list of > points > to the addPoints() method.
You need to create an instance of a PlotPanel. > class PlotPanel(wx.lib.plot.PlotCanvas): > def __init__(self, points=[], *args, **kwargs): > def addPoints(self, points): > def _drawGraph(self): > #this button tells it to make a graph using "mypoints". > > def OnGraphButton(self, event): > mypoints = [(3,4), (5,6)] #these to be used > PlotPanel.addPoints(PlotPanel,mypoints) Instead of using the class create an instance(aka object) self.plotPanel = PlotPanel(mypoints,self.notebook1) That creates an instance passing the mypoints list in to youir init method along with the notebook1 that you pass when you create an instance later(see below). > self.notebook1.AddPage(imageId=-1, > page=PlotPanel(self.notebook1), > select=True, > text='Weight') This should use the plotPanel instance: self.notebook1.AddPage(imageId=-1, page=self.plotPanel, select=True, text='Weight') > The error I get using it this way is: > > TypeError: unbound method addPoints() must be called with PlotPanel > instance as first argument (got type instance instead) Yep, You gotta have an instance to call the methods. See my OOP topic for more on classes, objects etc. > I'm lost. Also, what does "self.points += points" mean? What is > the += > operator? x += 5 is shorthand for x = x + 5 The same applies to -/* etc. See my raw Materials topic for more info on operators. HTH, -- Alan Gauld Author of the Learn to Program web site http://www.freenetpages.co.uk/hp/alan.gauld _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor