用Matlab制作一个你专属的App!(如何用matlab制作软件)

MATLAB是一款功能强大的软件,我们不仅可以通过编写代码来实现各种功能,还可以使用它的GUI(Graphical User Interface)界面,让我们编写的程序,通过图形直观地输出。接下来我就通过一个简单例子大概介绍介绍一下GUI界面的编写的过程,并进行封装生成exe文件,即使不打开Matlab也可以独立运行,真正打造属于你自己的App

首先,我们来新建一个GUI界面,我们可以通过再命令行窗口输入guide,来打开新建GUI界面或者通过依此点击>新建>App>GUIDE 来打开新建GUI界面的窗口,具体如下图所显示

用Matlab制作一个你专属的App!(如何用matlab制作软件)

已保存

用Matlab制作一个你专属的App!(如何用matlab制作软件)

新建一个空的GUI后,会弹出一个窗口,如下图所示

用Matlab制作一个你专属的App!(如何用matlab制作软件)

可以看可以看到界面的左边有很多的小图标,这些就是GUI中的控件也是我们要进行操作的对象。不同的控件具有不同的功能,有只用来显示文字的文本框、可编辑的文本框、按钮等等。我就不做一一介绍,在这里只介绍几个简单常用的控件,如下图所示。

用Matlab制作一个你专属的App!(如何用matlab制作软件)

图中列举了几个简单常用的控件,我们从上到下依次介绍

  1. 按钮:顾名思义就像生活中的按钮一样,可以按下并实现某些功能,我们在GUI中的很多操作可以通过点击按钮来完成。
  2. 可编辑文本:字面上就能看出来,在这个文本框内,里面的内容我们是可以编辑的。
  3. 静态文本:不可编辑的文本,通常用来对某些控件进行说明。
  4. 弹出式菜单:对它进行操作的时候会弹出我们事先设定的选项供我们选择。
  5. 坐标轴:这个大家可以理解成一个用来显示图片,进行绘画的界面部分就行。

接下来就是在GUI中如何来操作这些控件,在此之前,我们需要先来了解,我们能操纵控件的什么(也就是控件的属性)。控件都有哪些属性呢,我们以可编辑文本为例做说明,当我们新建一个可编辑文本后,双击这个控件,就会弹出下图所示的界面

用Matlab制作一个你专属的App!(如何用matlab制作软件)

界面左侧就是可编辑文本框各个属性的名称如字体大小、字体颜色、‘String’等等,右边对应了属性的值或者内容,我们可以在这里进行直接编辑或者像通过代码进行编辑。同样的我们也可以通过代码来获取控件各个属性,正是基于这个我们才能通过GUI来实现各个控件的联动,从而实现我们想要达到的效果。在属性界面,尤其要注意的就是图上中红色框框标出的部分,见下图。

用Matlab制作一个你专属的App!(如何用matlab制作软件)

String的内容表示了控件显示出来的文本,Style则是控件的类型,Tag表示了控件的名称。在编写代码的时候我们通常会使用set这个语句来设置某个控件的属性或者使用get来获得某个控件的属性。下面我们以一个简单的例子来演示GUI界面的编写过程。

现如今房价越来越贵,大家买房子的时候很少有人会取全款买房,贷款买房是大多数人的选择。可是贷款的时候不同的利率,不同的还款方式,贷款的金额,年限等等都会影响我们最后的还款金额。那么我们在这里就用Matlab的GUI界面来做一个贷款App吧。考虑到贷款要考虑的因素,我们可以设计如下的GUI界面

用Matlab制作一个你专属的App!(如何用matlab制作软件)

红色框框用到了静态文本用来表明左侧的文本对应的内容是什么,绿色框框用到了可编辑文本,在运行GUI界面的时候我们可以改动里面的内容。蓝色的是

弹出式菜单,对应的里面设置的是还款方式(等额本金和等额本息),我们在其String属性里面设置

如下图:

用Matlab制作一个你专属的App!(如何用matlab制作软件)

在String里面每一行表示一个选项,我们对应的分别是等额本金和等额本息。黄色框框就是坐标轴控件,这里用来显示我们贷款后每个月还款的金额。紫色框框里面用到的是按钮控件,我们预计的结果就是所有参数输入完毕后点击一下按钮,就能在坐标轴里面显示每个月的还款额度,并在最下面输出我们总共要付的利息。对于可编辑的控件当我们使用鼠标右键单机的时候会弹出一个对话框,我们可以在“查看回调”对应的下拉选项中选择一个编程来实现功能,最长用到的就是callback。比如在我们的例子中要实现鼠标左键单击‘计算’按钮,在界面输出贷款结果,那么我们可以鼠标右键单击计算按钮,点开查看回调中的callback,来创建‘计算’这个按钮控件的回调函数。如下图:

用Matlab制作一个你专属的App!(如何用matlab制作软件)

点开之后就会出现一个代码框如下图

用Matlab制作一个你专属的App!(如何用matlab制作软件)

图中function pushbutton3_Callback(~,~handles)就是‘计算’按钮的的回调函数,由于我这之前没有更改计算按钮的Tag属性(也就是控件的ID),所以这里现实的是pushbutton3,当我们改表属性Tag为pushbutton_jisuan,然后显示就变成了下图所示

用Matlab制作一个你专属的App!(如何用matlab制作软件)

然后我们就可以在里面输入代码来实现我们想要的功能。在我们这个例子中,整个GUI只需要在这里编写代码,具体代码如下:


huankuan=get(handles.popupmenu_huankuan,\’Value\’);%通过读取控件Value来获取贷款方式

r=str2double(get(handles.edit_lilv,\’string\’))*…%换行

(1 str2double(get(handles.edit_fudong,\’string\’))/100)/1200;%获取并计算月利率

yihang=get(handles.edit_yinhang,\’String\’);%获取贷款银行

H=str2double(get(handles.edit_daikuannian,\’string\’))*12;%获取贷款期数

P=str2double(get(handles.edit_jine,\’string\’));

axes(handles.axes1);

switch huankuan

case 1 % 等额本金

for M=1:H

A(M)=P*10000/H (1-(M-1)/H)*P*r*10000;%等额本金计算公式

end

plot([1:H],A)

% ylim([min(A)-500 max(A) 500]);

xlim([0 H]);

title(yihang);

ylabel(\’每月还款金额(元)\’);

xlabel(\’还款月份\’);

case 2 % 等额本息

for M=1:H

A(M)=P*10000*r*((1 r)^H/((1 r)^H-1));

end

plot([1:H],A)

xlim([0 H]);

title(yihang)

ylabel(\’每月还款金额(元)\’);

xlabel(\’还款月份\’);

end

L=(sum(A)-P*10000)/10000;%计算总利息

set(handles.text_lixi,\’String\’,num2str(L));%在文本框lixi中显示总利息


对于新手来说一定要注意handles.xxx,这里的xxx对应的是每个控件的Tag。还有就是要注意数据的属性,要显示出来的都是字符型,我们直接从控件读取的都是字符型,需要使用str2double或者str2num函数转换成可以计算的数字型。同样的,当我们通过代码设置控件的‘String’属性的时候需要将计算的数字用num2str转换成字符型才能使用。

都弄好之后我们点击保存,命名为daikuan。然后我们就能看到有两个文件保存了下来,如下图

用Matlab制作一个你专属的App!(如何用matlab制作软件)

分别是m文件和fig文件,对应的是代码文件和图形界面文件,两个文件之间是相互联动的,想要运行我们刚刚编写好的GUI,这两个文件去缺一不可。

当这两个文件在Matlab的工作路径下的时候我们可以双击fig文件打开GUI或者双击m文件,然后点击编辑器里面的‘运行’按钮打开GUI。打开后的界面如下图所示

用Matlab制作一个你专属的App!(如何用matlab制作软件)

假如我们选择工商银行贷款,贷款金额为100万元,贷款期限为30年,年利率是4.9%,利率上浮20%。那么选用等额本金和等额本息的计算出来的还款图就如下图所示

用Matlab制作一个你专属的App!(如何用matlab制作软件)

最后我们把制作好的GUI界面封装成exe文件来脱离Matlab独立运行。

我们可以在命令行窗口输入deploytool这个代码或者通过Matlab>App>Application Compiler,来打开Application Compiler。打开后如下图所示

用Matlab制作一个你专属的App!(如何用matlab制作软件)

在选好daikuai.m文件后,我们还可以自己设置App图标以及各种软件信息,如下图

用Matlab制作一个你专属的App!(如何用matlab制作软件)

输出有两种,一种文件较小,运行的时候需要额外安装一些软件(如果已经装了Matlab则不需要),另一种文件很大是可以完全独立运行的(不需要安装Matlab)。这里我们选择最小的那个,然后点击Package进行封装生成EXE文件。然后找到生成文件路径,双击打开新生成for_test文件夹下的daikuan,同样也能够开始贷款计算啦,此时你不需要运行Matlab!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2024年9月14日 下午6:10
下一篇 2024年9月14日 下午6:22

相关推荐

  • 定制家居再洗牌,尚品、索菲亚谁的麻烦更大?(尚品索菲亚哪个好)

    图片来源@视觉中国 文 | 市值观察,作者 | 徐风,编辑 | 小市妹 回看家居行业2022年中报,也开始感受到阵阵寒意。以扣非净利润指标为对照,在同花顺统计的30家家居上市公司中…

    科研百科 2023年5月18日
    90
  • 企业管理制度包括哪些内容(现代企业管理制度包括哪些内容)

    企业管理制度包括哪些内容 一个完整的公司管理规章制度包括哪些内容 一个完整的公司管理规章制度包括哪些内容? 完整的公司管理规章制度包括如下内容: 一、行政管理,包括 考勤管理、印章…

    科研百科 2024年1月20日
    76
  • 科研项目指南目录

    科研项目指南目录 科研项目指南目录是指导科研项目编写、实施和管理的重要文档。以下是一些常见的科研项目指南目录类型和它们的作用: 1. 项目计划指南目录– 项目背景和目标…

    科研百科 2025年2月3日
    1
  • 科研项目申报要什么材料

    科研项目申报需要哪些材料? 科研项目申报是申请科研项目的重要步骤。在申报过程中,需要提供各种材料,以便评审专家了解项目的背景、研究目的、研究方法、研究内容、研究成果和实现目标等方面…

    科研百科 4天前
    1
  • 项目管理的相关

    项目管理: 实现目标的关键 项目管理是指在规定的时间、预算和质量范围内,通过组织资源并协调各种活动来实现特定目标的的全过程管理。在现代商业环境中,项目管理已经成为实现成功的关键因素…

    科研百科 2025年1月14日
    0
  • 群晖版ERP

    群晖版ERP: 让企业管理更加高效 随着企业竞争的加剧,企业管理者需要不断地优化企业的管理,提高企业的效率和利润。传统的ERP系统已经无法满足现代企业管理的需求,因此,群晖版ERP…

    科研百科 2024年12月9日
    0
  • 打造党建平台,建强基层支部(打造党建平台,建强基层支部建设)

    文/刘永坚 吴晟杰 习近平总书记指出:“把基层党建工作抓好了,我们的基层党组织牢不可破,我们的党员队伍坚不可摧。”为更有效发挥企业基层党组织作用,国网福建建设公司(以下简称“建设公…

    科研百科 2023年3月3日
    135
  • 仿真软件开发公司排名前十有哪些(仿真软件开发公司排名前十有哪些品牌)

    仿真软件开发公司排名前十有哪些   华盛恒辉仿真软件开发是一项非常重要的技术,可以用于模拟各种场景和系统,从而为真实世界中的决策制定提供支持。   北京软件开发公司排行榜   一线…

    科研百科 2024年5月6日
    32
  • 合同数字化管理

    合同数字化管理:让合同管理更快捷,更透明 随着数字化时代的到来,合同数字化管理已经成为了一种趋势。合同数字化管理不仅能够提高合同管理的效率和准确性,还能够减少纸质合同带来的风险和不…

    科研百科 2024年11月21日
    2
  • 常德项目管理系统价格

    随着现代软件开发和项目管理技术的不断发展,常德项目管理系统已经成为了许多企业选择的项目管理软件之一。常德项目管理系统可以帮助企业更好地管理项目,提高项目管理效率,降低项目管理成本,…

    科研百科 2024年12月19日
    1