Help in wxpython

Dave Angel davea at ieee.org
Wed Dec 2 04:06:08 EST 2009



madhura vadvalkar wrote:
> Hi
>
> I am trying to write an  PAINT like application where on the mouse
> click a circle is drawn on canvas. I am new to python and using
> wxpython to create this.
>
> here is the code:
>
> import wx
>
> class SketchWindow(wx.Window):
>
>     def __init__ (self, parent,ID):
>
>         wx.Window.__init__(self, parent, ID)
>
>         self.panel =wx.Panel(self, size= (350,350))
>         self.pen=wx.Pen( 'blue',4)
>         self.pos=(0,0)
>         self.InitBuffer()
>         self.Bind(wx.EVT_LEFT_DOWN,self.OnLeftDown)
>
>     def InitBuffer(self):
>
>         size=self.GetClientSize()
>         self.Buffer=wx.EmptyBitmap(size.width,size.height)
>         dc=wx.BufferedDC(None,self.buffer)
>   

You spelled the instance attribute differently.  You initialized it as 
"Buffer" but reference it as "buffer"   Lowercase would be more standard.
> <snip>
> I am getting the following error:
>
> Traceback (most recent call last):
>   File "C:/Python26/circle.py", line 42, in <module>
>     frame=SketchFrame(None)
>   File "C:/Python26/circle.py", line 38, in __init__
>     self.sketch = SketchWindow(self, -1)
>   File "C:/Python26/circle.py", line 12, in __init__
>     self.InitBuffer()
>   File "C:/Python26/circle.py", line 19, in InitBuffer
>     dc=wx.BufferedDC(None,self.buffer)
> AttributeError: 'SketchWindow' object has no attribute 'buffer'
>
> Please tell me what I am doing wrong.
>
> Thanks
>
>
>   



More information about the Python-list mailing list