matlab双位按钮toggle的用法
如何实现如下伪代码:if(按钮on)开始循环播放一个文件;else%按钮off停止如上循环。end...
如何实现如下伪代码:
if (按钮on)
开始循环播放一个文件;
else %按钮off
停止如上循环。
end 展开
if (按钮on)
开始循环播放一个文件;
else %按钮off
停止如上循环。
end 展开
1个回答
展开全部
双位按钮toggle回调函数中加上如下代码:
val=get(handles.togglebotton,'Value');
switch val
case 1
set(handles.togglebotton,'String','停止')
%开始循环播放一个文件;
case 0
set(handles.togglebotton,'String','开始播放)
%停止如上循环。
end
val=get(handles.togglebotton,'Value');
switch val
case 1
set(handles.togglebotton,'String','停止')
%开始循环播放一个文件;
case 0
set(handles.togglebotton,'String','开始播放)
%停止如上循环。
end
追问
谢谢,已解决
回调函数写法有些差异,主要两个问题:
(1)代码第一行,如何得到参数;
(2)如何停止循环,不知你的代码中当恢复按钮val==0时,循环播放是否可以立即停止。
我采用了如下代码:
val=get(handles.togglebotton,'Value');
while val==1
sound(x,Fs);
pause(1);
val=get(handles.togglebotton,'Value');
end
追答
(1)首先定义一个togglebotton,将他的Tog也改为"togglebotton“在使用val=get(handles.togglebotton,'Value');就能获得它的Value值了;
(2)我的代码里没加循环 其实你的这种方法也可以,用的是while循环 不过建议还是不要无限循环下去,用for循环几次就可以,否则很占内存的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询