A Buffered window class.
To use it, subclass it and define a Draw(dc) method that takes a dc to draw to. In that method, put the code needed to draw the picture you want. The window will automatically be double buffered, and the screen will be automatically updated when a Paint event is received.
When the drawing needs to change, you app needs to call the
BufferedWindow.UpdateDrawing()
method. Since the drawing is stored in a bitmap, you
can also save the drawing to file by calling the
SaveToFile(self, file_name, file_type) method.
Default class constructor. |
|
This method should be overridden when sub-classed. |
|
Handles the |
|
Handles the |
|
This would get called if the drawing needed to change, for whatever reason. |
BufferedWindow
(wx.Window)¶A Buffered window class.
To use it, subclass it and define a Draw(dc) method that takes a dc to draw to. In that method, put the code needed to draw the picture you want. The window will automatically be double buffered, and the screen will be automatically updated when a Paint event is received.
When the drawing needs to change, you app needs to call the
BufferedWindow.UpdateDrawing()
method. Since the drawing is stored in a bitmap, you
can also save the drawing to file by calling the
SaveToFile(self, file_name, file_type) method.
__init__
(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.NO_FULL_REPAINT_ON_RESIZE, agwStyle=KC_BUFFERED_DC)¶Default class constructor.
parent – parent window. Must not be None
;
id – window identifier. A value of -1 indicates a default value;
pos – the control position. A value of (-1, -1) indicates a default position, chosen by either the windowing system or wxPython, depending on platform;
size – the control size. A value of (-1, -1) indicates a default size, chosen by either the windowing system or wxPython, depending on platform;
style – the window style;
agwStyle – if set to KC_BUFFERED_DC
, double-buffering will
be used.
Draw
(self, dc)¶This method should be overridden when sub-classed.
dc – an instance of wx.DC
.
OnPaint
(self, event)¶Handles the wx.EVT_PAINT
event for BufferedWindow
.
event – a PaintEvent
event to be processed.
OnSize
(self, event)¶Handles the wx.EVT_SIZE
event for BufferedWindow
.
event – a wx.SizeEvent
event to be processed.
UpdateDrawing
(self)¶This would get called if the drawing needed to change, for whatever reason.
The idea here is that the drawing is based on some data generated elsewhere in the system. If that data changes, the drawing needs to be updated.