greyw...@gmail.com wrote: > Hi everyone, > > The following program doesn't work as expected: > > > #Python 2.7 & wxPython 2.9 > > import wx > > class MyFrame(wx.Frame): > """ We simply derive a new class of Frame. """ > def __init__(self, parent, title): > wx.Frame.__init__(self, parent, title=title, size=(200,100)) > self.control = wx.TextCtrl(self, style=wx.TE_MULTILINE) > self.Show(True) > > app = wx.App(False) > size=(600,400) > frame = MyFrame(None, 'Small editor') > #frame = MyFrame(None, 'Small editor', (600,400)) > app.MainLoop() > > If I use the default size=(200,100) it's just fine. But if I try it > pass it a new size (600,400), I get the following error: > Traceback (most recent call last): > File "C:\Python27\wxpythoneasy1.py", line 13, in <module> > frame = MyFrame(None, 'Small editor',((600,400))) > TypeError: __init__() takes exactly 3 arguments (4 given) > > It seems like it's begging to have it pass a different size than the > default, but there doesn't seem to be a way to pass a tuple as a > single argument. > > Any help would be appreciate.
You have to tell __init__ what's coming. def __init__(self, parent, title, size): wx.Frame.__init__(self, parent, title=title, size=size) and so on. Mel. -- http://mail.python.org/mailman/listinfo/python-list