Microsoft Small Basic

Program Listing: QNQ618
'***************************************************************
' Number Keypad 1.1
' www.miskei.hu
' Miskei Vendel
' 2014. 04. 16.
'
'***************************************************************
Controls.ButtonClicked = OnButtonClicked
size=100
GraphicsWindow.Title = "Number Keypad /www.miskei.hu/"
GraphicsWindow.BrushColor = "black"
GraphicsWindow.FontName = "Arial"
GraphicsWindow.FontBold = "true"
GraphicsWindow.FontSize =size/2
GraphicsWindow.Height=size*5
GraphicsWindow.Width=size*3
GraphicsWindow.CanResize="false"
keyboard()
Sub keyboard
For i=-1 to 9
button[i] = Controls.AddButton(i, i*size, size)
Controls.SetSize(button[i], size, size)
Controls.SetButtonCaption(button[i],i)
Controls.Move(button[i],math.Remainder(i+2,3)*size,4*size-(math.Floor((i+2)/3)*size))
EndFor
Controls.SetButtonCaption(button[-1],".")
Controls.Move(button[0],0,4*size)
Controls.SetSize(button[0],2*size,size)
Controls.Move(button[-1],2*size,4*size)
monitor=Controls.AddTextBox(0,0)
Controls.SetTextBoxText(monitor,"0")
Controls.SetSize(monitor,3*size,size)
EndSub
Sub OnButtonClicked
LastButton = Controls.LastClickedButton
mon=Controls.GetTextBoxText(monitor)
If mon="0" And Text.GetLength(mon)=1 Then
mon=""
EndIf
If (LastButton = button[-1]) And (Text.GetIndexOf(mon,".")=0) Then
Controls.SetTextBoxText(monitor,Text.Append(mon,controls.GetButtonCaption(LastButton)))
Sound.PlayClick()
EndIf
If (LastButton <> button[-1]) Then
Controls.SetTextBoxText(monitor,Text.Append(mon,controls.GetButtonCaption(LastButton)))
Sound.PlayClick()
EndIf
EndSub