[lazarus] Okay, what else has changed in Lazarus?

Andrew Johnson aj_genius at hotmail.com
Thu Oct 24 13:04:14 EDT 2002

On 24 Oct 2002 11:08:27 -0500
"Tony Maro" <tony at maro.net> wrote :
>Yesterday my help+about dialog worked just fine (too bad the tabs didn't
>Today, after updating Lazarus, the paint routines flicker something
>horrible and when you close the dialog it exceptions, and after that the
>application won't close correctly.
>I'm sure it's related to the scrolling label control and the Timer
>object that scrolls it, but there's nothing unusual.  I already had
>checks to make it not paint when closing.
>The flicker seems to be that when I trigger the label to redraw with
>"invalidate" that it's triggering the entire form to redraw again (which
>triggers the label again... you get the picture)  But that's just a
>I've made no changes to that code either.  Sources are still online if
>you need them at:
>I can always do away with the scrolling label control, but it adds a
>nice touch, you know?

I am not certain, but this may be sort of my fault. I changed TForm to 
inherited from TScrollingWinControl, like Delphi, and Modified its 
CreateComponent code in the interface to create a scrollbox with a layout. 
It may be that something between the two causes a problem. I will see if 
there is a workaround, or a flaw in my changes, or if this is something in 
the GTK end.

Wait... I do have a thought. It may be because the scrolling label inherits 
from TLabel. TLabel has no handle in GTK, which means a call to repaint it 
DOES call to repaint the parent. maybe the flickering is only now noticeable 
because of my changes. I will see what happens if I modify the Scrolling 
Label to use a TStaticText instead....Yes that worked..

I will leave the solution up to you, but I would suggest making use of my 
TStaticText code, and make TSrclLabel its own TGraphicControl which draws 
itself and so forth.. I am currently considering re-writing TLabel, but 
until that happens you will have an unsightly AboutBox, unless you fix it 


Get a speedy connection with MSN Broadband.  Join now! 

More information about the Lazarus mailing list