Microsoft Small Basic

Program Listing: VDJ792
shapeWidth = 20
shapeHeight = 20

GraphicsWindow.MouseMove = OnMouseMove

GraphicsWindow.BrushColor = "Red"
shape = Shapes.AddTriangle(10, 0, 0, 20, 20, 20)
Shapes.Move(shape, 0, GraphicsWindow.Height - shapeHeight)

Sub OnMouseMove
If GraphicsWindow.MouseX = 0 Then
Shapes.Move(shape, 0, GraphicsWindow.Height - shapeHeight)
ElseIf Shapes.GetLeft(shape) > GraphicsWindow.MouseX - shapeWidth Then
Shapes.Move(shape, GraphicsWindow.MouseX - shapeWidth, GraphicsWindow.Height - shapeHeight)
Else
Shapes.Move(shape, GraphicsWindow.MouseX - shapeWidth, GraphicsWindow.Height - shapeHeight)
EndIf
GraphicsWindow.Title = "shapeLeft = " + Shapes.GetLeft(shape) + ", mouseX = " + GraphicsWindow.MouseX
EndSub