(三)Appdesigner-界面转换及数据导入和保存

news/2024/10/22 14:42:59/

提示:文章为系列文章,可以在对应学习专栏里面进行学习。对应资源已上传

目录

前言

一、Appdesigner是什么?

二、界面切换

三、数据导入及保存

(一)数据导入

(二)数据保存

总结


前言

        Appdesigner是MATLAB中进行软件开发的部分,可以创建exe文件,脱离MATLAB的运行环境,生成独立的App。本文首先介绍了Appdesigner是什么,并介绍了两个功能的程序设计方法,第一个是程序界面之间的切换功能,另一个是程序数据的导入和保存功能。之后,博主会介绍更多的Appdesigner程序设计技巧和功能,并上传示例资源,大家可以根据实际需求拓展使用示例程序。


一、Appdesigner是什么?

        MATLAB中的Appdesigner是实现人机交互的重要平台,可以将程序和仿真进行封装,生成对应的App软件,是程序展示的一种重要形式。我们可以通过MATLAB进行程序的编写,但是程序的使用者有时并不需要了解程序的内部构成,更加关注程序的使用功能,因此需要一种良好的程序交互界面,也就是MATLAB中之前使用的GUI功能,但是相比之下,Appdesigner是以组件的形式自动生成程序,构建界面,更加的简便和高效,有取代GUI的趋势,因此掌握Appdesigner的编写技巧,构建良好的人机交互界面是一项重要的技能。

二、界面切换

        界面切换的原很简单,就是创建一个按钮,增加相应的回调函数,通过关闭当前界面,打开对应的其他界面来实现界面之间的切换。下面展示相应的界面和程序


app1中界面切换按钮代码如下(示例):

app2;
delete(app);

app2中界面切换按钮代码如下(示例):

app1;
delete(app);

三、数据导入及保存

        数据的导入导出要根据数据的类型进行具体的编写,但是基本的框架是相同的。利用两个按钮的回调函数进行设计,数据的导入之前要进行文件的选择;数据的保存要选择保存的位置,下面根据不同的数据类型对按钮的回调函数进行编写。

        其对应页面布局如下:

(一)数据导入

        数据导入可以分为很多数据类型,可以从(.csv)文件、(.mat)文件或者(.xlsx)文件中进行数据的读取,所运用的读取函数可能不同,但是方法类似,示例中展示了(.csv)文件的导入程序。

        以下程序为(.csv)文件的数据导入程序:

%数据导入
[filename,pathname]=uigetfile('*.csv');
name = strcat(pathname,filename);
variable = csvread(name);

(二)数据保存

         数据保存也可以分为很多数据类型,可以保存(.csv)文件、(.mat)文件或者(.xlsx)文件格式的数据,所运用的保存函数可能不同,但是方法类似,示例中展示了(.csv)文件、(.mat)文件以及(.xlsx)文件格式的保存程序。

        以下程序为(.xlsx)文件的数据保存程序:

[result_filename,pathname]=uiputfile('输出表.xlsx','文件保存为');% 将结果写入 Excel 文件
result_sheet = 'Sheet1';
filename1 = strcat(pathname,result_filename);xlswrite(result_filename_1, {'h1', 'h2', 'h3', 'h4'}, result_sheet, 'A1');
result_data = [1:length(G); G; 2*G; 3*G];
xlswrite(filename1, result_data', result_sheet, 'A2');

        以下程序为(.mat)文件的数据保存程序:

[filename,pathname]=uiputfile('data.mat','数据保存为');% 获取私有属性数据                
data = app.simOut.platform;% 保存数据为MAT文件
save(fullfile(pathname,filename), 'data');% 显示保存成功信息
uialert(app.UIFigure, '数据已保存', '保存成功');

         以下程序为(.csv)文件的数据保存程序:

% 将结果写入 Excel 文件
[filename,pathname]=uiputfile('platform.csv');
name = strcat(pathname,filename);
dataoutput = [1 1 1 1 1]; 
dlmwrite(name, dataoutput,'precision','%.5f');

总结

        以上就是今天要讲的内容,本文仅仅简单介绍了Appdesigner两种功能的设计方法,一个是界面的切换功能,另一个是数据的导入和保存功能。后续会逐步介绍更多的软件功能设计技巧并上传更多的资源。


http://www.ppmy.cn/news/1459462.html

相关文章

FPGA火在哪里?(从商业和专业角度分析)

#前言: 通信领域可分细支众多,在通信过程中总会用到各种各样的协议,而根据通信的对象不同,协议不同,实现方法不同。但大致可分为两类硬件通信和软件通信。从事务逻辑发展角度来说,通信是结果,不…

ABB机器人计时器Clock的使用

ABB指令中有数据类型Clock。Clock用于时间测量,一个功能类似秒表的时钟,用于定时。单位为秒。 和Clock相关的指令有:ClkReset、ClkStart、ClkStop、ClkRead。 例: VAR clock clock1;声明一个时钟clock1 VAR num ti…

WEB基础---反射

什么是反射 相对官方解释 反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问、检测和修改它本身状态或行为的一种能力; 在运行时期,动态地去获取类中的信息(类的信息,方法信息,构造器信息,字段等信息); 在运行的时候获取到的类信息 封装一个字节码对象…

【Unity AR开发系列】介绍如何使用这个支持热更的AR开发插件,快速地开发AR应用

预告 Unity开发AR系列 本专栏将介绍如何使用这个支持热更的AR开发插件,快速地开发AR应用。 更新 二、使用插件一键安装HybridCLR和ARCore 三、配置带HybridCLR的ARCore开发环境

火山引擎数据飞轮携手美宜佳 探索拓店营销新思路

在刚刚过去的 3 月,美宜佳又交出了门店增长的高分答卷。 最新数据显示,美宜佳在全国的连锁店数已经超过 35000 家,每年净增 3000-4000 家店,月均服务顾客超 2 亿人次;同时,在中国连锁经营协会(CCFA)近日发布…

android进阶-Binder

参考:Android——Binder机制-CSDN博客 机制:Binder是一种进程间通信的机制 驱动:Binder是一个虚拟物理设备驱动 应用层:Binder是一个能发起进程间通信的JAVA类 Binder相对于传统的Socket方式,更加高效Binder数据拷贝…

flutter 命令

flutter 命令是Flutter框架提供的一个命令行工具&#xff0c;用于帮助开发者进行应用的开发、调试和部署。它包含了多个子命令&#xff0c;覆盖了从项目初始化到发布的整个流程。 以下是一些主要命令的详细解释&#xff1a; flutter create <output directory>&#xf…

Goframe学习笔记(六)上下文共享变量

文章目录 Context结构定义逻辑封装上下文变量注入上下文变量使用 官方文档: Context: 业务流程共享变量 - GoFrame (ZH)-Latest - GoFrame官网 - 类似PHP-Laravel, Java-SpringBoot的Go企业级开发框架 Context 在Go的执行流程中&#xff0c;不存在全局变量这种获取请求参数的…