; Parent Window Local Desk_W = ClientWidth(Desktop()), Desk_H = ClientHeight(Desktop()) Parent = CreateWindow("B+ Window Framework by Eikon", Desk_W / 2 - 320, Desk_H / 2 - 240, 640, 480, 0, 1 + 2 + 4) SetMinWindowSize Parent, 640, 480 ; Menu Const cnt_EXIT = 1 Menu = WindowMenu(Parent) File = CreateMenu("&File", 0, Menu) CreateMenu "E&xit", cnt_EXIT, File UpdateWindowMenu Parent ; Sunken Panel (nicer canvas look) Panel = CreatePanel(1, 1, 631, 433, Parent, -1) SetGadgetLayout Panel, 2, 1, 2, 1 ; Canvas Canvas = CreateCanvas(0, 0, 628, 429, Panel) SetGadgetLayout Canvas, 2, 1, 2, 1 SetBuffer CanvasBuffer(Canvas) Local OX, OY ; Old MX, MY AutoSuspend 1 SeedRnd MilliSecs() CreateTimer 60 ; 60 FPS Repeat Select WaitEvent() Case $803: End ; X Out Case $1001 ; Menu Event If EventData() = cnt_EXIT Then End Case $4001 ; Tick MX = MouseX(Canvas): MY = MouseY(Canvas) If MX <> OX Or MY <> OY Then ; Mouse moved OX = MX: OY = MY Color Rand(0, 255), Rand(0, 255), Rand(0, 255) Rect MX, MY, Rand(5, 10), Rand(5, 10) EndIf VWait 1: FlipCanvas Canvas, 0 End Select Forever