Collecting keyboard responses while flipping screens
I am trying to make an experiment in which a stimulus is moving over the screen for x screens, during which the participant may press a button (stimulus should keep moving, ignoring the response).
I prepare a list of canvasses in advance, which I can loop through during a trial. At a certain frame, I send a parallel port trigger. This all works really well. However, I can't get the response collection to work.
I tried while loops as well as a coroutines item but both seem to wait until the animation (aka showing a list of canvasses in succession) is done before recognising the keypress?
I tried just asking for my_keyboard.get_key() both with and without timeout (timeout messes up the animation, apart from not helping), both before and after canvaslist[i].show() and both before and after checking if i reaches a certain point. It doesn't work, at least not in the ways I tried... I can get it all to work easily if I have to show just one canvas instead of a succession of them.
This is my show-loop, how can I get python to collect keyboard responses during the whole loop?
thanks!!
(edit: oke, this post keeps crashing if I want to add some code...). I'll try in a reply.

Comments
keeps crashing. Here it is in a txt-file:
We found it! For future reference: ket_key() will give you back something even if no key has been pressed: none for the key, with a timestamp of in my case the last screen refresh. Which I could have known instead of spending 1.5 days on puzzling, as in the documentation "if response==None" is used, which I read as "is it empty" or maybe is.na() without checking this assumption. Sigh.
I added an if statement to catch the first keyboard response:
key,timestamp=my_keyboard.get_key()
if key != None and alreadypressed==0
#save variables here
alreadypressed=1
I would have liked to use coroutines, as the current script will give me some noise due to sampling per refresh rate, but it'll do