Matlab GUI跳过我的if语句即使值是真的吗?
5视图(30天)
显示旧的评论
下面是代码的片段。我是调试,发现“n”的值是3和“m”是1,因此,进入初始if语句。然而,在执行第二行是“如果m = = 1”,而不是执行(因为这是真的)只是跳过第二结束。这是在我的按钮的回调函数。
n = getappdata (0,“n”);m = getappdata (0,“米”);
如果n > = 1
cvList ((n + 1): 12) = 0;
如果m = = 1
mList (2:12) = 0;
elseifm = = 0
mList ((n + 1): 12) = 0;
结束
结束
11日评论
Stephen23
2018年8月1日
编辑:Stephen23
2018年8月1日
“我如何才能访问所有对象在同一时间?”
命令
集
和
得到
使用数组的处理所以你不需要做什么特别的,例如:设置所有对象数组
一个
看不见的:
集(,“可见”,“关闭”)
您甚至可以设置不同的值的数组处理,所以他们不需要使用相同的值:仔细阅读文档了解,和实验!
“我理解我可以将它们的值是这样的:“
handles.CV{1} =得到(hObject,“价值”);
“但是我怎么能将它们存储在数组格式访问他们的可见性?因为他们都是不同的编辑框吗?”
处理应该存储在一个数组中。这是很容易使用索引(例如创建框在一个循环中)或一次性(许多图形命令可以创建多个对象,并返回一个数组处理)。他们是不同的编辑框是无关紧要的。如果箱子排列系统之后,他们可以很容易地调用相同的回调一个额外的参数(如循环计数器),然后回调函数知道哪个按钮被按下或柜台可以作为索引。看到我的一些FEX提交这样的例子: