转载请注明出处:【博客园-clayyjh-https://www.cnblogs.com/clayyjh/p/15121128.html】
1. 点击Matlab主界面-新建,新建APP
2. 进入APP开发界面,分为设计界面和代码界面
在设计界面可以直接将需要的元素拖到代码界面,在代码界面对元素作进一步设置
3. Matlab APP代码界面,是一个框架,分为不可更改部分和自定义部分,包括属性、函数、回调函数。
只需要在自定义部分进行程序编写,不可更改部分无需操作,可以通过控件的菜单栏调整控件属性,也可以
通过代码的方式进行调整。
4. 可以以属性的方式设置全局变量,以函数的函数设置自己的子函数,以回调函数实现自己程序的主题功能。
如果界面需要初始化设置,可以添加startupFcn回调函数,在此回调函数中进行界面初始化设置;在界面中
添加的控件,某些可以对其添加回调函数,在回调函数中添加功能主体程序,实现该控件的功能。
特别地,对于添加函数而言,函数的第一个输入参数必须为app,如果没有使用app,可以用~代替。
5. 回调函数的执行顺序:假设APP存在多个回调函数,当执行回调函数1时,回调函数2如果被触发,会首先中断
回调函数1去执行回调函数2,当回调函数2执行完毕后回到中断处执行回调函数1。如果在回调2未执行完毕时,
回调1再次被触发时,会立即执行回调1,且回调1执行完毕不会再执行回调2。
附件:
1. Matlab帮助文档:https://ww2.mathworks.cn/help/index.html
2. csdn博客:https://blog.csdn.net/slandarer/article/details/107567541
3. APP开发经验:
1. 假设APP存在多个回调函数,当执行回调函数1时,回调函数2如果被触发,会首先中断
回调函数1去执行回调函数2,当回调函数2执行完毕后回到中断处执行回调函数1。如果在回调2未执行完毕时,回调1 再次被触发时,会立即执行回调1,且回调1执行完毕不会再执行回调2
2. 回调函数中写死循环时,需要加延时或者其他语句,否则,系统会陷入死循环,不能执行其他回调函数。 3. 每一个while循环,如果在某种条件下会什么都不执行直接循环,都需要加一个延时 4. Button仅仅是个Button,State是0和1数值属性的 .Value 5. 对于return而言,出现在子函数中,执行到return时为子函数执行完毕,返回到主文件中,继续执行之后的 语句;若出现在主文件中,执行到return时为主函数执行完毕;出现在APP中的回调函数中,为退出此回调函数, 回调函数可以理解为子函数的概念。 6. 对于plot而言,需要在每次plot之后重新规定当前坐标区域,不过也可以采用hold on的方法使得在初始时设置一次 坐标区域即可;对于animatedline而言只需要在初始时规定坐标区域。 7. 生成图用figure(n);生成坐标区用axes(n)。 8. xticks xlim plot animatedline的第一个参数均可是坐标区域对象。 9. Animatedline需要固定坐标轴才有动画效果