Verfasst: 25.02.2007 21:45
jo die funktion ist declared, der code wäre zu lange denke ich um den jetzt hier zu posten.
Array ist global, MESSDAUER auch.
der rest des programms ist eigentlich unwichtig... hat nix mit den operationen mehr zu tun!
Wenn es weiterhilft: der Compiler meckert mit dem StartDrawing(ScreenOutput()) meint der "the specified output is NULL"
allerdings läuft es so fehlerlos
habe alles so gelassen nur diesen codeschnippsel lauffähig gemacht.
Array ist global, MESSDAUER auch.
der rest des programms ist eigentlich unwichtig... hat nix mit den operationen mehr zu tun!
Wenn es weiterhilft: der Compiler meckert mit dem StartDrawing(ScreenOutput()) meint der "the specified output is NULL"
allerdings läuft es so fehlerlos
habe alles so gelassen nur diesen codeschnippsel lauffähig gemacht.
Code: Alles auswählen
Declare Aufnahme()
InitSprite()
InitKeyboard()
InitMouse()
OpenScreen(800,600,32,"")
MESSDAUER=10000
Dim YWerte(MESSDAUER*80)
Repeat
ExamineKeyboard()
ClearScreen(0,0,0)
StartDrawing(ScreenOutput())
FrontColor(0,0,0)
Locate(0,0)
DrawText("Aufnahme-Modus [P]: "+Str(AUFNAHME_MODUS))
StopDrawing()
FlipBuffers()
;Starten/Beenden der Aufnahme
If KeyboardReleased(#PB_KEY_P)
Select AUFNAHME_MODUS
Case 0 ;Aufnahme wird nun gestartet
AUFNAHME_MODUS=1
thid=CreateThread(@Aufnahme(),0)
Case 1 ;Aufnahme lief und wird nun beendet
AUFNAHME_MODUS=0
KillThread(thid)
EndSelect
EndIf
;[...]
Until KeyboardPushed(#PB_KEY_ESCAPE)
;[...]
Procedure Aufnahme()
For a=0 To MESSDAUER*80
ExamineMouse()
YWerte(a)=MouseDeltaY()
Next
EndProcedure