初步用matlab做GUI界面,并生成独立的可执行程序分享

我这次接受一个小任务做一个GUI界面,我选择了利用matlab来做。以前没有做过,网上还是有很多经验分享的,我基本完成了之后也写一写记录一下。

GUI的功能是实现图片的显示和闪烁。首先在matlab里主页/新建/应用程序/GUIDE下,选择默认blank GUI点击确定。确定之后生成了一下的界面

初步用matlab做GUI界面,并生成独立的可执行程序分享

上述界面上显示的各个热键的功能不再多说,Axes坐标系用来在GUI中添加图形或图像,所以按住axes拖动到右面的面板中合适的位置,通过在坐标系上右击进入属性inspector,可以进行属性设置,这里我只是修改了tag。

选择菜单栏的工具/GUI选项,修改调整大小的方式为成比例,可以使得GUI界面执行的时候可以调整窗口的大小。

初步用matlab做GUI界面,并生成独立的可执行程序分享

这里我还有一点要求就是不仅希望GUI界面可调大小,而且希望GUI界面刚开始执行的时候就是全屏显示,即GUI界面的全屏显示问题。

这个要在相应的GUI.m文件中添加这样两条语句即可。ssize=get(0,'screensize');
set(hObject,'position',ssize);

最后一个问题就是生成可独立运行程序exe了。过程还是比较简单的。首先要设置编译器:在命令行窗口输入mbuild -setup和mex -setup选择编译器,注意如果没有编译器的话要安装。我这里遇到的一个问题是提示mbuild未包含在你安装的产品中,这就比较尴尬了,说明matlab安装的时候没有安装Matlab compiler SDK,一般大家在安装的时候选上安装所有组件就OK吧。

然后执行mcc -m file.fig file.m;生成exe文件,这种情况下exe执行的时候会弹出黑窗口,怎么消除呢,执行mcc -e file.fig file.m重新生成exe即可。

最后我们想在没有安装matlab的电脑上运行exe程序,这时候需要将matlab安装路径下/toolbox/compiler/deploy/win32的MCRInstaller.exe连同程序文件一起打包发送到目标电脑上。MCR是执行matlab函数所需要的一系列共享函数库,是matlab的运行环境。在目标电脑上执行MCRInstaller.exe按步骤完成MCR的安装,这样就可以在没有matlab的电脑上执行exe程序了。

以上是本次小实践的过程,写的比较粗略,算是一小笔记,欢迎大家提问探讨,一起学习。