TIvorySurface::Canvas

Canvas is the drawing area of the surface.

__property TIvoryCanvas* Canvas;

Description

Use Canvas to get the drawnig area of the surface. Canvas can only be used in the OnPaint event handler of the surface.

Notes

In DirectDraw, a surface requires a DC (Devices Context) to draw on it. The DC is a temporary object, and it should be released when you don't need it. The problem is much more acute than in standard Windows mode, because the copy between surfaces is impossible until you release their DCs. So in Ivory Draw, a DC is only grabbed if it's necessary, and it's always released at the end of the OnPaint event. So you can't use the Canvas outside the OnPaint event handler.

Also note that Canvas in Ivory Draw is not the same as VCL object Canvas. They differ in several issues.

Back to TIvorySurface