Tech Note 36: Scrolling Forms
|
Using the Frame object, it's easy to create forms that scroll hortizonally and/or vertically in NS Basic/CE.
The Code:
ShowOKButton true Output.scalemode=3 'start IDE alternate AddObject "Frame","Frame1",0,0,229,258 AddObject "VScrollbar","VS1",230,0,10,258 AddObject "HScrollBar","HS1",0,258,230,10 h=0 v=0 Sub Main Frame1.width=432 'whatever >230 Frame1.height=409 'whatever >178 Frame1.move 0,-8 'adjust for caption 'start visual generation for demo q=chr(34) For x=0 to 19 execute("AddObject " & q & "label" & q & "," & q & "lbl" & x & q & "," & x*20+2 & "," & x*20+9 & ",49,19,Frame1") execute("lbl" & x & ".caption=" & q & x & q) execute("lbl" & x & ".borderstyle=1") Next 'end visual generation for demo End Sub Sub VS1_Change v=(VS1.Value-1)*vs1.height v=int(v/20)*20+8 'smoothing If v>frame1.height-vs1.height Then v=frame1.height-vs1.height If v<8 Then v=8 Frame1.Move -h, -v HS1.move 0,HS1.top End Sub Sub HS1_Change h=(HS1.Value-1)*HS1.width h= int(h/20)*20 'smoothing If h>frame1.width-HS1.width Then h= frame1.width-HS1.width If h<0 Then h=0 Frame1.Move -h, -v End Sub
Charl Van Schoick Software Developer.