>Hey, it actually works! Here's the code if you're interested.
>
>Thanks Fred and Mike for the help.
>
>-Matt
>
>*-------------
>MMM.prg
>*-------------
>SET PROC TO MMM.PRG
>DEFINE WINDOW lwWin1 FROM 1,1 TO 5,15 SYSTEM GROW FLOAT CLOSE NAME oWin1
>DEFINE WINDOW lwWin2 FROM 3,3 TO 7,18 SYSTEM GROW FLOAT CLOSE NAME oWin2
>
>oWin1.AddObject("WinTimer","WinTimer")
>oWin1.Name = "oWin1"
>oWin1.Visible = .T.
>=Inkey(2)
>
>oWin2.AddObject("WinTimer","WinTimer")
>oWin2.Name = "oWin2"
>oWin2.Visible = .T.
>
>*------------------------------------------------
>DEFINE CLASS WinTimer AS TIMER
>Interval = 5000
>
>PROCEDURE Timer
>wait window timeout .3 "Timer Event of: " + ALLTRIM(This.Parent.Name)
>IF ! This.Parent.Visible
> *--Perform whatever unload/cleanup code here.
> This.Parent.Release()
>ENDIF
>ENDPROC
OK, so how do you edit using these windows/timers?