wx.Overlay¶Creates an overlay over an existing window, allowing for manipulations like rubber-banding, etc.
Overlay is implemented internally as a native window shown on top of the window it is used with and it is more efficient to keep the wx.Overlay object around instead of recreating it every time it’s needed, i.e. typically you would have a member variable of type wx.Overlay in your window class.
The overlay is initialized automatically when it is used by wx.DCOverlay or OverlayDC but has to be cleared manually, using its Reset function, when its contents shouldn’t be shown any longer.
Use of this class is shown in the Drawing Sample where pressing the left mouse button and dragging the mouse creates a rubber band effect using wx.Overlay.
See also
wx.DCOverlay, OverlayDC
Class Hierarchy¶
Inheritance diagram for class Overlay:
Methods Summary¶Clears the overlay without restoring the former state. |
|
Sets or unsets constant opacity of the overlay window. |
Class API¶Possible constructors:
Overlay() -> None
Creates an overlay over an existing window, allowing for manipulations like rubber-banding, etc.
None
Clears the overlay without restoring the former state.
To be done, for example, when the window content has been changed and repainted.
None
Sets or unsets constant opacity of the overlay window.
If alpha is -1 , use per-pixel alpha blending, otherwise use the given alpha value for all pixels.
alpha (int)
None
Added in version 4.3/wxWidgets-3.3.0.
Note
Drawing on the overlay window is opaque by default under wxMSW. You have to call SetOpacity(-1) before initializing the overlay and use a graphics context to do the actual drawing if you want per-pixel alpha blending. Or, assuming that SetOpacity(-1) wasn’t called, explicitly set the alpha value (at any time) to change the overlay window’s opacity.
Note
This is currently only implemented for wxMSW and does nothing in the other ports.