Slide Index demo follows: '---------- Start FB^3 Code -------- Include "Tlbx Appearance.Incl" dim wndPtr as pointer dim sliderH as handle dim btnSelect% as int end globals local dim j,k dim left% dim top% dim id% dim btnType% dim btnRect as rect dim bevelH as handle LOCAL FN btnGrid(l%,t%,w%,h%,col%,row%,vg%,hg%) id% = 1 FOR k = 0 TO row%-1 'Build by row FOR j = 0 TO col%-1 left% = l%+j*(w%+vg%) top% = t%+k*(h%+hg%) SETRECT(btnRect,left%,top%,left%+w%,top%+h%) btnType% = _kControlBevelButtonLargeBevelProc bevelH = FN NEWCONTROL(wndPtr,@btnRect,chr$(64+id%),_True,0,0x0200,0,btnType%,65536*id%) INC(id%) NEXT j next k END Fn local dim sliderRect as rect dim err LOCAL FN buildWnd WINDOW#-1,"SlideIndex.demo",(0,0)-(580,150),_docNoGrow wndPtr = window(_wndPointer) text _sysFont, 12, 0 edit field#1,"",(275,100)-(300,118),_statFramed,_centerJust err = FN SetThemeWindowBackground(wndPtr,_kThemeActiveDialogBackgroundBrush,_true) setrect(sliderRect,30,40,550,80) sliderH = fn newcontrol(wndPtr,sliderRect,"",_true,2 6,1,26,_kControlSliderProc+6,65536*30) fn btnGrid(30,30,20,20,26,1,0,0) button#35,_activeBtn,"Quit",(490,110)-(550,130),_shadow btnSelect% = 1: scroll button#1,_markedBtn'Start with A edit$(1) = chr$(64+btnSelect%)'Display "A" window#1 END FN local dim evnt% dim id% dim err dim x as int LOCAL FN doDialog evnt% = DIALOG(0) id% = DIALOG(evnt) SELECT evnt% case _wndRefresh err = fn drawthemeedittextframe(#[tehandle(1)],_true) case _btnClick select id% case 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26 button#30,(id%+1)'Reset Slider for x = 1 to 26 long if x <> id% button#x,_activeBtn end if next btnSelect% = id% edit$(1)= chr$(64+btnSelect%)'Display selection case 30'Slider btn btnSelect% = fn getctlvalue(sliderH) scroll button#btnSelect%,_markedBtn for x = 1 to 26 long if x <> btnSelect% button#x,_activeBtn end if next edit$(1)= chr$(64+btnSelect%)'Display selection case 35 end end select CASE _wndClose END END SELECT END FN FN buildWnd ON DIALOG FN doDialog DO HANDLEEVENTS UNTIL 0 '-------- End of Code -------- Steve Van Voorst