最近再用matlab的GUIDE的时候,经常提醒,将现有的GUI移植为app文件,本着好奇和求知的态度,用了下app designer,在此,分享使用的心得和体会。
优点:
1.界面比GUIDE的界面好用不知道多少倍!!!!
2.GUI中,删掉的控件,对应的回调函数和创建函数还会保留再m文件中,导致越修改,m文件越冗余。而在app中,删掉控件后,对应的代码也会被删除,代码简洁。
3.app修改控件的属性更加简单,代码和界面设计切换方便。
4.app采用典型的面向对象的编程方式,对于有C++编程经验的来说,上手更快。
5.可以按照app的形式发布,直接安装到matlab中,方便使用。
6.控件的UI做的更加美观,控件的数目更多。可以编写更花哨的UI界面。
缺点:
1.运行速度慢,是真的慢,有明显的卡顿感。如果能把这个问题解决掉,真的就完虐GUIDE。
下面说说使用的小心得:
1.把需要从界面读取的参数,直接保存再app的属性值之中,与handles相似,但是代码更简洁,所见即所得。
2.再guide中,可编辑文本的内容是保存再string属性中,而app是保存再value中,名字更加贴切。但是要注意,即使保存再value中,也不是数值,还是一个字符串,需要用str2double函数转换成数值。
3.所有的回调函数和属性,有private和public之分。private属性的函数或者属性,当app被当作参数传递到自定义的函数中时候,不能够被调用。所以一定要注意。