Code: Alles auswählen
#USER_TIMER_MINIMUM = 10
Global Color.l
Procedure CCOlOR(hwnd,uMsg,idEvent,dwTime)
Color = Random($FFFFFF)
EndProcedure
Procedure CText2(hwnd,uMsg,idEvent,dwTime)
Static dir1.l, dir0.l
Static x.l
Static y.l
If dir1 : x - 1 : Else : x + 1 : EndIf
If x > 700 : dir1.l = 1 : ElseIf x < 0 : dir1 = 0 : EndIf
If dir0 : y - 1 : Else : y + 1 : EndIf
If y > 580 : dir0 = 1 : ElseIf y < 0 : dir0 = 0 : EndIf
StartDrawing(ScreenOutput())
DrawingMode(4)
DrawText(x,y,"TimerID = " + Str(idEvent),$0000FF,Color)
StopDrawing()
EndProcedure
Procedure CText1(hwnd,uMsg,idEvent,dwTime)
Static dir1.l = 1, dir0.l
Static x.l = 300
Static y.l = 430
If dir1 : x - 1 : Else : x + 1 : EndIf
If x > 700 : dir1.l = 1 : ElseIf x < 0 : dir1 = 0 : EndIf
If dir0 : y - 1 : Else : y + 1 : EndIf
If y > 580 : dir0 = 1 : ElseIf y < 0 : dir0 = 0 : EndIf
StartDrawing(ScreenOutput())
DrawText(x,y,"TimerID = " + Str(idEvent),$FFFFFF,Color)
StopDrawing()
EndProcedure
InitSprite()
InitKeyboard()
OpenScreen(800,600,32,"")
t1 = SetTimer_(0,0,#USER_TIMER_MINIMUM,@CText1())
t2 = SetTimer_(0,0,#USER_TIMER_MINIMUM,@CText2())
t3 = SetTimer_(0,0,1000,@CCOlOR())
Repeat
ExamineKeyboard()
ClearScreen(Color)
FlipBuffers()
Until KeyboardReleased(#PB_Key_Escape)
killtimer_(0,t1)
killtimer_(0,t2)
killtimer_(0,t3)
Code: Alles auswählen
InitSprite()
#timerid = 0
hwnd = OpenWindow(0,0,0,200,200,"")
OpenWindowedScreen(hwnd,0,0,200,200,0,0,0)
SetTimer_(hwnd,#timerid,200,0)
Repeat
event = WaitWindowEvent(30)
If event = #WM_TIMER
Color = Random($FFFFFF)
EndIf
ClearScreen(Color)
FlipBuffers()
Until event = #WM_CLOSE
killtimer_(hwnd,#timerid)
erwartet steht auf MSDN bei den Events unter 'Return Value' .