matlab中GUI的属性检查器中的XLimMode是什么_如何在Matlab中使用GUI做一个简易音乐播放器? ---- (二)GUIDE...

4015513442ffe0b8c084c62a81ab7371.png

咕咕怪由于昨天有重要的事情所以咕了一天的文章

(感觉写得挺基础的,对各个部分有一定了解的童鞋可以直接跳过了解的部分

用Matlab做一个app有几种办法呢?

同样的,帮助文档告诉了我们答案:三种。

a8bbdd1814ab565ef1d6037879fd6ba1.png
英语好的童鞋看完这张图应该就大概懂了

(我个人在这个项目中主要使用GUIDE

一、Programmatic Workflow

从简单的说起吧,第一种,简单来说就是用代码直接实现。

也就是说,你需要像个老父亲一样事无巨细地一样样构建:

“从底端的figure、panel到上端的uicontrol、axes,一幅横贯GUI的铁幕已经降落下来。“

不论是运行的程序窗口有多大、出现在屏幕哪个角落这类和用户体验挂钩的属性;

还是控件显示的字体是什么、字号有多大这类细碎的事物;

或是设置物体间的”亲子关系”(Parent/Child);

但凡用得到的,都需要一一设置。

举个具体例子吧,你可以新建脚本,然后把这段代码复制到你的matllab里然后运行并体验一下每行代码各个属性的含义:

function[] 

这种方法有什么好处呢?

个人认为,这样的好处大概在于没有中间商赚差价,控件要用的属性和设置都一目了然;而且具有很强的可复制性,想要做同样的一个按钮只需要Ctrl+C & Ctrl+V 就完事了。

缺点也很清楚。。。控件一多摆起来写起来实在是一项大工程。

二、GUIDE

这是我这次使用的一个重要工具。打开方式很简单,在命令行窗口中输入guide并按回车,稍候片刻就会弹出这样一个窗口:

6ded7f280a59e8e4d368c38addf6493f.png
来自matlab2017a的问候

由于下面三种与我们要做的GUI实在相差太多,我们选择第一个,建立空白GUI。

进入后左手边就是我们可爱的各种控件了

我们这次主要用到的控件和实现的功能有:

  1. 静态文本(Static Text),用于显示歌曲名称和播放时长
  2. 滑动条(Slider),用于调整播放进度及音量大小
  3. 可编辑文本(Edit Text)(这个项目可用也可不用)
  4. 按钮(Push Button),用于上一首、下一首的交互功能
  5. 可切换按钮(Toggle Button),播放/暂停切换功能
  6. 单选按钮(Radio Button),用于调整panel是否可视
  7. 面板(panel),美观就完事了
  8. 坐标轴(axes),可以用来显示声音的波形
  9. 列表框(Listbox),可以用来做播放列表

0eff4b9614e3a1f3d7f6d19662147630.png
我摆成了这个样子

(当然摆完后各个控件上是不会有字符的,像“添加”、“删除”、“下一首”这些字符都是我们要现在加的

在你把各种控件放置在了你所想象的位置后,就可以添加这些字符来改进这个小程序给用户的“第一印象”了:

双击我们要调整的控件,弹出了一大堆属性:(这里以按钮“下一首”为例)

993d935ce76022532584b0dc7ad250bd.png
按键“下一首”的各种属性↑

由于这篇教程篇幅有限,就着重介绍几个与本项目相关的属性:

CData:如果你有合适切题的图标,就可以赋给CData,不然你只能像下面一样偷懒了↓

String:一般都是显示在这个控件上的文字(当然slider滑动条这类的除外,我就直接用这个写了个“下一首”。。。

Callback:就是传说中的回调,这将是交互的关键!!!在下一篇中详细讲

Style:表示“这是什么控件”,这个控件是pushbutton

Tag:这个控件调用或者写回调的时候你该怎么称呼它,例如,如果你将Tag改成WoHaoShuai:

tmpstr = get(handles.WoHaoShuai,'String');
%tmpstr会是'下一首'
%你可以给每个控件都起个与众不同的名字
%类似这样的get、set在控件交互中将会很多

当你觉得你摆放完备且整齐后,就可以点击保存了

之后,你会得到.fig文件*1、.m文件*1

下一步就是编写.m文件了!

欲知后事如何,且听下回分解(雾

对了,还有:

三、App Designer

App Designer是在matlab2016a之后加入的新功能,在2018a后又加入了一些新功能(然而我用的是2017

打开方式和上一个比较像,在命令行中输入“appdesigner”就行了。

(根据我的使用感觉,最大的优点大概就是控件要美观太多了!!!!缺点大概就是这个平台不像GUIDE那样成熟,功能暂时没有那么齐全,不过我非常看好这种方法在以后的使用,甚至有想更新到2018用这个重新做一个播放器的想法

关于它和GUIDE的区别,请看:(纯英文预警,但讲得真的很透彻清楚

The State of App Building in MATLAB​blogs.mathworks.com

另外,写给强迫症:

你是否遇到控件对不齐又无可奈何强迫症爆发的情况?

其实GUIDE自带对齐功能,以封面那个图为例,位置是上面那一排中图标像汉字“串”一样的那个,在里面你可以花式对齐各种控件,具体操作方法就不赘述了

参考:

Ways to Build Apps​www.mathworks.com
7346b59d57be3e3927df2d4b8cf76c04.png

还有前几排那个文章,如果不想看英语,这里还有我找到的有好心人做了翻译工作的:

【小知识】MATLAB的App Designer与GUIDE​blog.csdn.net

由于这几天事情比较多,如果出现了错别字和表达错误不规范请通知我,我会修改的(迫真

祝大札开学快乐!XD

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/435369.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DDMMSS.SS转为DD

有时候甲方会给我们一些坐标,但是在arcgis中是无法直接显示的 这是因为该格式是DDMMSS.SS的格式,而arcgis支持的是DD格式的,其中dd单位是度,mm单位是分,ss.ss单位是秒 所以要在arcgis中显示我们需要将其转换为DD的格式…

LSGO软件技术团队2015~2016学年第十一周(1109~1115)总结

团队简述: LSGO软件技术团队成立于2010年10月,主要从事的应用方向为互联网与移动互联网(UI设计,前端开发,后台开发),地理信息系统;研究方向为大数据处理与机器学习。成立几年来为学校…

maven springboot 除去指定的jar包_SpringBoot的运行机制

SpringBoot打包机制先看一眼spring-boot的maven插件打包后的target目录:其中有一个.jar.original的文件,一个.jar文件,其中.jar.original才是原始的jar包,而.jar文件是经过spring-boot的maven插件处理过后的jar,spring…

TVDI计算流程

TVDI计算过程 下载数据的网站: https://ladsweb.modaps.eosdis.nasa.gov/search/ 所需数据modis的16天的ndvi数据(MOD13A2)和每8天的LST数据(MOD11A2) 北半球选择Terra,南半前选择Aqua,因为两个卫星旋转是相对的,太阳高度角不同,会有些许误差 利用modis处理工具(MRT)…

LSGO软件技术团队2015~2016学年第十二周(1116~1122)总结

团队简述: LSGO软件技术团队成立于2010年10月,主要从事的应用方向为互联网与移动互联网(UI设计,前端开发,后台开发),地理信息系统;研究方向为大数据处理与机器学习。成立几年来为学校…

python append函数_让你python代码更快的3个小技巧!速度提高了一倍还多

大家好!今天呢,我们来聊一聊如何加速你的 python 代码。Python 语言的优点可以列举出许多,语法简单易懂、模块丰富、应用广泛等等。但是世界上没有有完美的东西,python 一个明显缺点就是运行速度慢,至少跟 C 语言没法比…

栅格计算面积

1.进行栅格重分类 2.重分类 3.打开属性,查看像元大小 4.打开属性表 5.添加字段 6.打开字段计算器 7.计算结果如下(单位一般为平方米)

autotools使用

Makefile固然可以帮助make完成它的使命,但要承认的是,编写Makefile确实不是一件轻松的事,尤其对于一个较大的项目而言更是如此。那么,有没有一种轻松的手段生成Makefile而同时又能让我们享受make的优越性呢?本节要讲au…

LSGO软件技术团队2015~2016学年第十三周(1123~1129)总结

团队简述: LSGO软件技术团队成立于2010年10月,主要从事的应用方向为互联网与移动互联网(UI设计,前端开发,后台开发),地理信息系统;研究方向为大数据处理与机器学习。成立几年来为学校…

[转]揭开正则表达式的神秘面纱

揭开正则表达式的神秘面纱关闭高亮[原创文章,转载请保留或注明出处:http://www.regexlab.com/zh/regref.htm]引言正则表达式(regular expression)就是用一个“字符串”来描述一个特征,然后去验证另一个“字符串”是否符…

智能机器人及其应用ppt课件_一文了解!伺服系统机理及其在工业机器人等领域的应用...

更多,更及时的干货内容,请加我们的微信公众号:wc_sfdj诚邀业内人士及机构向我们投稿,投稿有礼投稿邮箱:tougao51wctt.com来源 | 网络欢迎阅读本篇文章,文末有福利哦!(一)伺服系统综述1、伺服运动…

利用python爬取房价

​公众号二维码 爬取房价网站:(安居客)https://zb.fang.anjuke.com/loupan/all/ 由于该网站每隔一段时间需要进行验证(反爬虫),所以我们为了防止我们爬取信息的时候出现间断,所以需要借助execl来保证信息的连续性。 结果展示

python 计算订单_python实现apriori算法的关联规则之支持度、置信度、提升度

Apriori算法的简介 Apriori算法:使用候选项集找频繁项集 Apriori算法是一种最有影响的挖掘布尔关联规则频繁项集的算法。其核心是基于两阶段频集思想的递推算法。该关联规则在分类上属于单维、单层、布尔关联规则。在这里,所有支持度大于最小支持度的项集…

LSGO软件技术团队2015~2016学年第十四周(1130~1206)总结

团队简述: LSGO软件技术团队成立于2010年10月,主要从事的应用方向为互联网与移动互联网(UI设计,前端开发,后台开发),地理信息系统;研究方向为大数据处理与机器学习。成立几年来为学校…

java安装和环境配置

下载jdk 网址为https://www.oracle.com/java/technologies/javase-downloads.html 2.安装jdk 3.配置环境 以下都是在系统变量下新建 为jdk安装目录 D:\Program Files\Java\jdk-15.0.2 .;%JAVA_HOME%\bin;%JAVA_HOME%\lib\tool.jar; %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 4.…

在Windows Azure中使用自己的域名

请参考:http://blog.smarx.com/posts/custom-domain-names-in-windows-azure 本文是对这篇文章部分解释和补充。 并请记住,此博客总是能给你在Windows Azure的开发中带来帮助。 域名解析机制浅析 域名解析,本是个很简单的事情:我们如若想将我…

LSGO软件技术团队2015~2016学年第十五周(1207~1213)总结

团队简述: LSGO软件技术团队成立于2010年10月,主要从事的应用方向为互联网与移动互联网(UI设计,前端开发,后台开发),地理信息系统;研究方向为大数据处理与机器学习。成立几年来为学校…

Tomca安装

下载 官网: http://tomcat.apache.org/ 2.安装 默认 3.安装成功

知其所以然(续)

查了一下,上篇知其所以然(以学习算法为例) 是08年7月写的,现在已经是10年11月,过去了两年零4个月,这说明了三件事情:1,一个问题其实你可以一直放在脑子里面,利用暗时间 对…

geoserver安装(war安装+exe安装)

下载 官网:http://geoserver.org/ 方法一 当前只有war版本的 下载结果 tomcat安装最好不要使用exe版本的,因为会出现问题,页面加载不出来,所以大家只需要下载下来解压即可 然后将geoserver安装包中的war文件放到webappx下 然后…