There are 14 slider controls and onscreen examples from the values generated by these sliders.
dim bx(15):dim by(15)
data 56,56,56,66,66,66,66,66,46,66,55,66,66,66
info:
data "rgb red","rgb green","rgb blue","stretch x","stretch y"
data "box x", "box y", "circle radius","for next #1","for next #2","for next #3"
data "unfilled box x","unfilled box y","text size"
cls 0
create bitmap 1,639,479
rem draw gradient metal tube behind sliders
y=50
for col=50 to 200 step 18
ink rgb(col,col,col),0
line 0,y,200,y
inc y
next col
for col=200 to 50 step -17
ink rgb(col,col,col),0
line 0,y,200,y
inc y
next col
get image 100,0,45,100,100
sprite 4,700,500,100
rem make an single slider and an single indicator bar
ink rgb(10,10,10),0
box 0,100,16,130
ink rgb(100,100,100),0
box 5,103,11,127
ink rgb(180,180,180),0
box 0,0,8,4
ink 0,0
box 7,104,9,126
box 1,1,7,3
get image 1,0,100,17,131
sprite 1,700,500,1
rem make a row of sliders
y=44
for x=0 to 160 step 12
paste sprite 1,x,y
next x
get image 2,0,0,9,5
sprite 2,700,500,2
get image 3,0,44,173,75
sprite 3,700,500,3
cls 0
sync on
rem give the indicator bar of the sliders x/y coordinates
n=1
for t=4 to 160 step 12
bx(n)=t
read indi
by(n)=indi
inc n
next t
set current bitmap 0
do
cls 0
xp=mousex():yp=mousey():mc=mouseclick()
rem the row of sliders
paste image 3,0,44
ink rgb(200,200,200),0
rem texting information
center text 260,30,"Stretch X Stretch Y"
center text 230,275,"Box X/Y"
center text 280,175,"Circle Radius"
center text (by(9)-46)+200,100,"For y=151 to 170 step 4"
center text (by(9)-46)+200,115,"For x = "+str$((by(9)-46)+200)+" to "+str$(((by(10)-46)*15)+(by(9)-46)+200)+" step "+str$(by(11)-46)
center text (by(9)-46)+200,130,"Click small rectangle to see 'for next' example"
center text 330,275,"Unfilled Box X/Y"
center text 325,362,"Graph of slider values"
rem texting the value of the numbers from the slider indicator bars
tn=270
for t=1 to 14
read A$
if t<4 then text 0,tn,str$(t)+" "+A$+" = "+str$((by(t)-46)*10)
if t=4 or t=5 then text 0,tn,str$(t)+" "+A$+" = "+str$((by(t)-46)*2)
if t=6 or t=7 or t=12 or t=13 then text 0,tn,str$(t)+" "+A$+" = "+str$(by(t))
if t=8 then text 0,tn,str$(t)+" "+A$+" = "+str$((by(t)-46)*2)
if t=9 then text 0,tn,str$(t)+" "+A$+" = "+str$((by(t)-46)+200)
if t=10 then text 0,tn,str$(t)+" "+A$+" = "+str$(((by(t)-46)*15)+(by(9)-46)+200)
if t=11 then text 0,tn,str$(t)+" "+A$+" = "+str$(by(t)-46)
if t=14 then text 0,tn,str$(t)+" "+A$+" = "+str$((by(t)-46)*4)
inc tn,15
next t
restore info
rem pasting the indicator bars of the sliders into place
for t=1 to 14
paste sprite 2,bx(t),by(t)
next t
rem tells what each slider contorls
for t=1 to 14
read A$
if xp>bx(t) and yp>40 and xp<bx(t)+10 and yp<73
center text 80,20,A$
endif
next t
restore info
rem movement of the indicator bars with left mouseclick
for t=1 to 14
if mc=1 and xp>bx(t) and yp>40 and xp<bx(t)+10 and yp<73
by(t)=yp
if t=11 and by(t)<47 then by(t)=47
if t=14 and by(t)<47 then by(t)=47
if by(t)<46 then by(t)=46
if by(t)>66 then by(t)=66
endif
next t
rem color selection with slider values
ink rgb((by(1)-46)*10,(by(2)-46)*10,(by(3)-46)*10),0
rem stretching and pasting sprite 4 (metal tube)
stretch sprite 4,(by(4)*2),(by(5)*2)
paste sprite 4,200,50
rem resizes box with slider values
xpos=200
box 200,290,200+by(6),290+by(7)
rem resizes circle with slider values
circle 280,230,((by(8)-46)*2)
rem pastes the small, unfilled rectangle to screen using slider value
paste sprite 2,((by(9)-46)+200),151
rem make unfilled box with slider values
line 300,290,300+by(12),290
line 300+by(12),290,300+by(12),290+by(13)
line 300+by(12),290+by(13),300,290+by(13)
line 300,290+by(13),300,290
rem puts various size text on screen using slider value
set text size (by(14)-46)*4
center text 500,200,"TEXT"
set text size 10
rem makes a graph of slider values
for t=1 to 14
box xpos,479-((by(t)-46)*5),xpos+10,479
inc xpos,20
next t
rem by clicking small, unfilled rectangle the for next command starts
if mc=1 and xp>((by(9)-46)+200) and yp>150 and xp<((by(9)-46)+210) and yp<160
get image 23,0,0,639,479
for yfn=151 to 170 step 4
paste image 23,0,0
for t=(by(9)-46) to ((by(10)-46)*15) step (by(11)-46)
paste sprite 2,t+200,yfn
sync
next t
get image 23,0,0,639,479
next yfn
sleep 1000
endif
sync
loop
end