About the background for keys: blitz buttons are simply the buttons of your OS .. there're no native imagebuttons.. (tho I've seen something once in some topic, but it was using external stuff iirc..)
window=CreateWindow("calc example - CS_TBL",0,0,384,384) button0=CreateButton("0",20,264,24,24,window) buttondot=CreateButton(".",44,264,24,24,window) buttonis=CreateButton("=",68,264,48,24,window) button1=CreateButton("1",20,240,24,24,window) button2=CreateButton("2",44,240,24,24,window) button3=CreateButton("3",68,240,24,24,window) button4=CreateButton("4",20,216,24,24,window) button5=CreateButton("5",44,216,24,24,window) button6=CreateButton("6",68,216,24,24,window) button7=CreateButton("7",20,192,24,24,window) button8=CreateButton("8",44,192,24,24,window) button9=CreateButton("9",68,192,24,24,window) buttonmin=CreateButton("-",92,192,24,24,window) buttonplus=CreateButton("+",92,216,24,48,window) buttonmul=CreateButton("*",116,192,24,24,window) buttondiv=CreateButton("/",116,216,24,24,window) buttonmod=CreateButton("%",116,240,24,24,window) buttonexp=CreateButton("^",116,264,24,24,window) buttonbracketopen=CreateButton("(",140,192,24,24,window) buttonbracketclose=CreateButton(")",140,216,24,24,window) buttonback=CreateButton("<-",140,240,24,24,window) buttonclear=CreateButton("C",140,264,24,24,window) Global cmd$ Global display=CreateTextField(20,160,96,24,window) Repeat WaitEvent() If EventID()=$803 quit=True If EventID()=$401 If EventSource()=button0 addcmd "0" If EventSource()=button1 addcmd "1" If EventSource()=button2 addcmd "2" If EventSource()=button3 addcmd "3" If EventSource()=button4 addcmd "4" If EventSource()=button5 addcmd "5" If EventSource()=button6 addcmd "6" If EventSource()=button7 addcmd "7" If EventSource()=button8 addcmd "8" If EventSource()=button9 addcmd "9" If EventSource()=buttonmin addcmd "-" If EventSource()=buttonplus addcmd "+" If EventSource()=buttonmul addcmd "*" If EventSource()=buttondiv addcmd "/" If EventSource()=buttonexp addcmd "^" If EventSource()=buttonbracketopen addcmd "(" If EventSource()=buttonbracketclose addcmd ")" If EventSource()=buttonclear addcmd "clear" If EventSource()=buttonback addcmd "bs" If EventSource()=buttonis ; find the eval# function in the codearchives, and use it on cmd$ ; put the result in the display using: "updatedisplay result$" EndIf EndIf Until quit End Function addcmd(s$) Select s$ Case "clear" cmd$="" Case "bs' cmd$=Left$(cmd$,Len(cmd$)-1) Default cmd$=cmd$+s$ End Select updatedisplay(cmd$) End Function Function updatedisplay(s$) SetGadgetText display,s$ End Function