Microsoft Small Basic

Program Listing: QXJ907
' Standard code for hooking up key, mouse, and text input actions to the graphics window.
GraphicsWindow.KeyDown = OnKeyDown
GraphicsWindow.KeyUp = OnKeyUp
GraphicsWindow.MouseDown = OnMouseDown
GraphicsWindow.MouseMove = OnMouseMove
GraphicsWindow.MouseUp = OnMouseUp
GraphicsWindow.TextInput = OnTextInput

Sub OnKeyDown
' Code for key presses goes here.
GraphicsWindow.Title = "'" + GraphicsWindow.LastKey + "' pressed"
EndSub

Sub OnKeyUp
' Code for key releases goes here.
GraphicsWindow.Title = "'" + GraphicsWindow.LastKey + "' released"
EndSub

Sub OnMouseDown
' Code for mouse button presses goes here.
If Mouse.IsLeftButtonDown Then
GraphicsWindow.Title = "Left button pressed"
ElseIf Mouse.IsRightButtonDown Then
GraphicsWindow.Title = "Right button pressed"
Else
GraphicsWindow.Title = "Some mouse button pressed (other than left and right)"
EndIf
EndSub

Sub OnMouseMove
' Code for mouse moves goes here.
' GraphicsWindow.MouseX and GraphicsWindow.MouseY are relative to the graphics window.
' Mouse.MouseX and Mouse.MouseY are relative to the entire screen, which is typically bigger than the graphics window.
GraphicsWindow.Title = "GWX = " + GraphicsWindow.MouseX + ", GWY = " + GraphicsWindow.MouseY + ", ScreenX = " + Mouse.MouseX + ", ScreenY = " + Mouse.MouseY
EndSub

Sub OnMouseUp
' Code for mouse button releases goes here.
GraphicsWindow.Title = "Some mouse button released"
EndSub

Sub OnTextInput
' Code for text inputs goes here.
EndSub