[lazarus] Form repaintis when painting speedbuton glyph
Vincent Snijders
vrs at dds.nl
Tue May 2 17:53:49 EDT 2000
Hi,
I have been looking at the problem with the speedbuttons in win32. I haven't
found a solution but I know more or less what is hapening, not the reason
why.
The problem is in painting the glyph on the button face. This paint action
(a copyrect on a canvas) causes gtk to emit (is that the right word) an
expose-event on the form and the form get repainted, which includes
repainting the speedbutton etc, etc.
Commenting out
TButtonGlyph(FGlyph).Draw(Canvas, PaintRect, Offset, Caption, FLayout,
FMargin, FSpacing, FState, Transparent, (0));
in the Procedure TSpeedbutton.Paint stops the repainting.
The reason why I can't solve this problem is a huge lack of knowledge on
graphics (DC etc) and gtk's interface to the graphics.
You might take a look at the stretchBlt function in gtkwinapi.inc. The
problem might be solved there.
I hope this helps somebody.
Regards,
Vincent Snijders.
More information about the Lazarus
mailing list