相关文章推荐
朝气蓬勃的野马  ·  Android DocumentFile ...·  5 月前    · 
大方的滑板  ·  c++ - Why am i ...·  1 年前    · 
腼腆的香菇  ·  Free SQL Database ...·  1 年前    · 

matlab app运行时界面切换出错问题及解决方案

matlab app的编写

目前,使用matlab编写基于matlab环境的app有两种方式,一种是传统的GUI功能,还有一种是The MathWorks公司在MATLAB R2016a推出的AppDesigner功能,后者使用面向对象的语法,比前者更加简洁方便。guide编写所得文件为.m文件与.fig文件,appdesigner编写所得文件为mlapp文件。

app界面编写完成后打包

下图为GUI文件打包界面:
![这是我用GUI设计的杂波模拟器软件的打包界面,左侧列表可以看到我打包进安装包的文件]
下图为AppDesigner文件打包界面:
这是我用appdesigner编写的杂波模拟器软件,左侧为打包进安装包的文件

打包安装后运行app,界面切换时出错

错误提示如下

在这里插入图片描述
分析原因:出错提示没有定义rayleigh,无法找到它,也就是无法调用我打包进去的rayleigh文件,从而没有办法切换界面,但是由我上述打包流程可知,该文件确实已经打包进了APP。

该问题是在打包完设计的APP程序后,安装运行才发生的。也就是说,当我设计完软件的各个界面,然后仿真时,并没有报错,程序的各项运行也很正常。

为解决这个问题,经过我的多种尝试,最终发现问题来自于AppDesigner设计中的delete(app)这句话,对应的是GUI设计中的close all这句话。
这两句话在平时的仿真中没有任何问题,delete(app)就是关闭当前的app界面的意思,close all就是关闭所有界面的意思。
但是,当把所有程序、界面打包成一个app时,这两句话就会造成歧义,系统会判定要关闭当前的软件,这也就导致了软件内部的文件无法调用的问题。
于是,我对这两句代码进行了删除与修改,最终解决了APP切换界面出错的问题。

这是我csdn写得第一篇博客,起因为我在编写制作软件的过程中,遇到了问题,但是网上却无法找到解决方案。
我想应该是appdesigner为matlab近些年才推出的功能,网络上缺乏相关教程。
所以我编写了这篇文章,希望能给以后用matlab编写app的同学一些启发,并提供一个可以解决该问题的方案。
我记得以前上嵌入式创新课时,杨刚老师说:“现在网络这么发达,你们可以很轻易地从网络上学到很多知识,那我希望同学们思考一下,你们能不能也发布一些东西,供他人学习借鉴呢?”
大家共勉吧!

Readme: 找到这个系列专栏,说明您已经是一名使用 app designer 设计的工程师了,很高兴与您相遇。 如果您是一名初学者,我建议您可以先学习我之前出的7节视频课程,视频,可以帮助您快速上手并实践编写 app 。 【 MATLAB - app 】系列教程(含视频)第0课_csdn上第一套关于 matlab app designer 系列“视频课”来啦~~ 如果您已经入门了 app designer 设计,强烈建议您跟我的博客内容学习一遍。跟着我系统的学习, app designer 的设计思想, MATLAB APP Design 是一套有关 MATLAB APP 窗口 化设计的教程,着重讲解了 APP 设计的基础知识及常见实例讲解。 1- MATLAB APP Design-图像的输入与输出 2- MATLAB APP Design-下拉菜单栏的使用 3- MATLAB APP Design- 切换 按钮组和单选按钮组 4- MATLAB APP Design-文件选择函数uigetfile的使用 5- MATLAB APP Design- 打包 安装成独立 APP 6- MATLAB APP Design-表格组件(uitable) 实例一: MATLAB APP design- 简单的函数表达式运算 实例二: MATLAB APP design-自定义函数运算及显示 实例三: MATLAB APP design-多项式函数拟合 实例四: MATLAB APP design-计算图片内物体的个数(分水岭算法) 实例五: MATLAB APP design- APP 登录 界面 的设计 实例六: MATLAB APP design- 凸透镜成像光学研究小工具 实例七: MATLAB APP design- 灰色预测-G(1,1) MATLAB APP Designer 可以创建专业的 APP ,同时并不要求软件开发专业背景。只需通过拖放可视化组件即可实现图形用户 界面 (GUI) 设计布局,使用集成的编辑器快速为其行为编程。一般情况下熟悉 MATLAB 编程语言就能够很好地掌握 APP 设计工具,但是由于该工具推出时间不长,相应的功能不够完善,部分功能也会存在不能实现的情况。结合之前自己设计的一个 App ,将自己踩过的坑和一些总结的经验分享出来,供大家参考交流。 0.写在前面 最近用 MATLAB 写GUI,用的是Guide,最后需要进行程序的 打包 ,查了一些资料, 打包 包括exe文件 打包 App 打包 ,这里都进行一个学习记录,后面需要可以回来查阅( MATLAB 版本:2020Ra) 1.使用 App lication Complier 在 APP 中找到 App lication Complier, 打开如下 界面 : 首先点击Add main file右边的加号添加主程序文件,然后选择Runtime included in package, 运行 时不用进行联网, 打包 好以后可以直接进行 运行 简要介绍了 Matlab APP Designer 的操作使用过程;介绍了RunTime的安装;介绍了如何使用 APP Dasigner实现代码调试信息自动刷新以及如何浏览文件,满足交互性要求 本文的目的是记录第一次设计GUI并 打包 成.exe程序,使得没有安装 Matlab 的电脑上也能 运行 该.exe程序,本文以WIN10 64bit, Matlab 2020b为例,进行介绍,希望能给您带来帮助!