切换功能在matlab回调函数中不起作用
switch function not working in matlab callback function
我用 matlab Guide 创建了一个简单的 GUI,想在其中一个回调函数中使用一个简单的开关函数。
函数如下所示:
ret = 0;
switch intervall
case 1
ret = 0.82;
case 5
ret = 0.82;
case 10
ret = 0.78;
case 15
ret = 0.78;
case 30
ret = 0.78;
case 60
ret = 0.82;
end
变量 "intervall" 是一个字符串,从用户输入中检索。但是,当我 运行 代码时,switch 函数似乎永远不会执行,并且 "ret" 变量从初始值 0 保持不变。
我已经在脚本中单独执行了这段代码并且它运行良好...
谁能告诉我我做错了什么?
非常感谢您!
如果 intervall
是一个字符串,您的 case
参数应该是字符串。
例如:
ret = 0;
switch intervall
case '1'
ret = 0.82;
case '5'
ret = 0.82;
case '10'
ret = 0.78;
case '15'
ret = 0.78;
case '30'
ret = 0.78;
case '60'
ret = 0.82;
end
我发现了问题,它与开关功能无关。间隔值是从弹出菜单中检索的,但不知何故它们没有被正确提取。该功能现在可以使用了,无论如何感谢您的帮助!
我用 matlab Guide 创建了一个简单的 GUI,想在其中一个回调函数中使用一个简单的开关函数。
函数如下所示:
ret = 0;
switch intervall
case 1
ret = 0.82;
case 5
ret = 0.82;
case 10
ret = 0.78;
case 15
ret = 0.78;
case 30
ret = 0.78;
case 60
ret = 0.82;
end
变量 "intervall" 是一个字符串,从用户输入中检索。但是,当我 运行 代码时,switch 函数似乎永远不会执行,并且 "ret" 变量从初始值 0 保持不变。 我已经在脚本中单独执行了这段代码并且它运行良好...
谁能告诉我我做错了什么?
非常感谢您!
如果 intervall
是一个字符串,您的 case
参数应该是字符串。
例如:
ret = 0;
switch intervall
case '1'
ret = 0.82;
case '5'
ret = 0.82;
case '10'
ret = 0.78;
case '15'
ret = 0.78;
case '30'
ret = 0.78;
case '60'
ret = 0.82;
end
我发现了问题,它与开关功能无关。间隔值是从弹出菜单中检索的,但不知何故它们没有被正确提取。该功能现在可以使用了,无论如何感谢您的帮助!