如何设置回答时间窗口,等待特定的按键响应在MATLAB 2011 b吗?

1视图(30天)
我想写这任务,提出了一种图像和等待参与者回答按八个左箭头键或右箭头键。回答时间是有限的,如果将时间的流逝下一个图像。 我用MATLAB 2011 b由于某种原因
伪代码就像:
函数= pushbutton_callback ()
如果leftArrow
结果=左;
其他的
结果=对
结束
集(gcf,“keypressFcn”@pushbutton_callback)
试验< 60
presentImage ();
如果keypressed
继续
elseif定时器2 > & keypressed = false
结果=零
继续
结束
结束

接受的答案

1月
1月 2021年5月30日
编辑:1月 2021年5月30日
% (R2009a测试)
函数测试
FigH =图(“KeyPressFcn”,@KeyPressed);
TimerH =计时器(“TimerFcn”@ (TimerH EventData) uiresume (FigH),
“ExecutionMode”,“SingleShot”);
k =一60
% presentImage ();
集(FigH,“用户数据”,0);%设置默认键
%等待2秒或直到键被按下:
startat (TimerH,时钟+ (0,0,0,0,0,2]);%潇洒地溢出了
uiwait (FigH);
停止(TimerH);%忽视进一步超时
如果~ ishandle (FigH)%抓住删除图:
disp (“图被删除。”);
打破;
结束
%检查是否一个键被按下:
UD =得到(FigH,“用户数据”);
开关双(UD)
情况下28
disp (“左箭头”)
情况下29日
disp (“右箭头”)
情况下0
disp (“太慢了”);
结束
结束
结束
函数KeyPressed (FigH EventData)
C =得到(FigH“CurrentCharacter”);
集(FigH,“用户数据”C);
uiresume (FigH);
结束
随着现代Matlab版本,使用KeyPressed ():
c = EventData.Key;
集(FigH,“用户数据”,“noKey”);
UD =得到(FigH,“用户数据”);
开关UD
情况下“leftarrow”
情况下“rightarrow”
情况下“noKey”
结束

更多的答案(0)

类别

找到更多的在循环和条件语句帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!

翻译的