[lazarus] some things wrong with LM_PAINT

Darek Mazur darekm at emadar.com
Thu Nov 20 15:16:55 EST 2003





> Darek Mazur wrote:
>
> > Function TWin32Object.IntSendMessage3(LM_Message: Integer; Sender:
TObject;
> > Data: Pointer): Integer;
> > section for LM_PAINT is absent
>
> LM_PAINT messages are sent from the interface to the LCL, not vice
> versa. Call Invalidate to repaint a control.
>
I do this , but thats not work

If You have right, that what for is :

Procedure TWinControl.Repaint;
Begin
  ....
  CNSendMessage(LM_PAINT, Self, nil);  --> LCL send LM_Paint to interface,
                               ^ this is empty call
 ....
end;

In windows if You call Invalidate after that must call WMPaint
and Repaint should do this,
I think that in Repaint is bug

PS. I know that Redraw is to CHILD, and I think Repaint is for whole object
REDRAW uses invalidate and update, REPAINT may use the same

Darek







More information about the Lazarus mailing list