[Gambas-user] Gambas3: ScrollArea doesn't scroll

Rolf-Werner Eilert eilert-sprachen at ...221...
Mon Jan 9 09:08:59 CET 2012


Here I am definitely understanding something wrong.

I need a graphical object that allows for drawing some sort of 
specialized table that can expand and collapse certain rows like a 
TreeView. So I decided to program that either based on HTML in a 
RichText thing or better everything by myself in a DrawingArea. The 
DrawingArea would have to expand according to the contents and be 
controlled by ScrollBars. Then I found there is a ScrollArea in Gambas3 
which could do 90 % of the job by itself.

This is my understanding: A ScrollArea should be a DrawingArea which is 
enlarged automagically as soon as you draw beyond its borders and will 
produce ScrollBars for the user to slide the area forth and back below 
the visible frame that confines it on screen.

Do you agree?

Ok, I have a small ScrollArea, say 100 x 100 px.

In Form_Open, I set its Contents to 2500 x 2500 px as from the 
documentation I understand it won't do that by itself (why not?).

It shows two ScrollBars.

I draw a line from 1,1 to 500,500.

When I move the ScrollBars, nothing happens, i. e. the image shows the 
beginning of the line and stands still. This happens in qt (KDE4) as 
well as GTK (LXDE).

The ScrollArea is not cached. I guess if I really have to move it by 
code, I will produce a whole lot of unnecessary Draw events.

But just in case, how would their position be calculated? I would have 
to read the ScrollBar values, but their output is not documented - is it 
percent? Or relative to anything?

(I cannot give you code snippets as this happened on my laptop this 
weekend, and I don't have G3 here in my office yet.)

Really looking forward to your comments!

Rolf




More information about the User mailing list