#1
|
|||
|
|||
Allow and record mouse clicks in 5s of wait time
I need to give 5s time to the user to make choice. Meanwhile, I want to record mouse clicks that user do in those 5s and write position of mouse click on screen in the database. How both of them are possible at the same time?
|
#2
|
|||
|
|||
You can use the viztask.waitAny command to wait for either a mouse event or a time event.
|
#3
|
|||
|
|||
But with waitAny task move to next trial after the first mouse click. However, I want the task to remain same for 5s in spite of mouse click.
|
#4
|
|||
|
|||
The following code waits for a signal sent after 5 seconds or a mouse left button press. The code will loop and count the mouse clicks until the signal event occurs:
Code:
import viz import viztask import vizact viz.go() viz.addChild('dojo.osgb') s = viztask.Signal() waitMouse = viztask.waitMouseDown(viz.MOUSEBUTTON_LEFT) waitSignal = s.wait() def mouseTask(): mouseCounter = 0 vizact.ontimer2(5,0,s.send) while True: d = yield viztask.waitAny([waitMouse,waitSignal]) if d.condition == waitSignal: break else: mouseCounter +=1 print mouseCounter viztask.schedule( mouseTask() ) |
#5
|
|||
|
|||
Thanks a lot
|
|
|