[Lazarus] Visual "uglyness" when creating TSynEdit @ runtime in my app
luiz americo pereira camara
luizmed at oi.com.br
Sat Jan 5 11:36:01 CET 2013
2013/1/5 luiz americo pereira camara <luizmed at oi.com.br>:
> 2013/1/5 Mattias Gaertner <nc-gaertnma at netcologne.de>:
>> On Sat, 05 Jan 2013 08:32:54 +0000
>> Martin <lazarus at mfriebe.de> wrote:
>>> and therefore finally
>>>
>>> s:=PageControl1.AddTabSheet;
>>> PageControl1.ActivePage := s; // paint tabsheet
>>> l := TSynEdit.Create(self);
>>> l.Parent := s; // paint scrollbars, not
>>> yet aligned
>>> l.Align := alClient; // paint scrollbars
>>> (again), this time aligned. Since synedit itself does not yet paint, the
>>> previous painted scrollbars remain a visible image
>>
>> It seems the Win32 intf triggers immediate paints.
>> Maybe some win32 developer can explain why.
>>
I've found a suspect.
SetParent triggers the handle creation
TSynEdt.CreateWnd calls SizeOrFontChanged that calls UpdateScrollBars
Here, since PaintLock <> 0 the scrollbar change is postponed
Martin/Bart, can you check if you pass the check for PaintLock in
UpdateScrollBars?
Alternatively comment the call to SizeOrFontChanged in CreateWnd and
see what happens
Luiz
More information about the Lazarus
mailing list