当前位置: 首页 > news >正文

构建 App 的方法

目录

构建 App

使用 App 设计工具以交互方式构建 App

使用 MATLAB 函数以编程方式构建 App

构建实时编辑器任务


        可以使用 MATLAB® 来构建可以集成到各种环境中的交互式用户界面。可以构建两种类型的用户界面:

  • App - 基于用户交互执行操作的自包含界面

  • 实时编辑器任务 - 可以嵌入实时脚本并在用户探查参数时生成代码的界面

构建和共享这些界面的方法以及界面的主文件类型因界面类型而异。下表显示不同之处。

类型构建方法文件类型共享选项
App使用 App 设计工具以交互方式构建.mlapp
  • 直接分发主接口文件和支持文件

  • 作为单个文件打包

  • 部署为可以在 Web 浏览器中运行的 Web App(需要 MATLAB Compiler™)

  • 创建独立的桌面应用程序(需要 MATLAB Compiler)

使用 MATLAB 函数以编程方式构建.m(MATLAB 脚本、函数或类文件)
  • 直接分发主接口文件和支持文件

  • 作为单个文件打包

  • 创建独立的桌面应用程序(需要 MATLAB Compiler)

实时编辑器任务​以编程方式,使用 matlab.task.LiveTask 基类或通过转换包含代码和交互式控件的实时编辑器中的所选内容.m(MATLAB 类文件)
  • 直接分发主接口文件和支持文件

构建 App

要创建自包含的用户界面,请构建 App。可以通过多种方式构建 App:

  • 使用 App 设计工具以交互方式构建

  • 使用 MATLAB 函数以编程方式构建

        以上每种方法分别提供了不同的工作流和略有不同的功能集。适合最佳选择取决于项目要求以及喜欢的工作方法。

使用 App 设计工具以交互方式构建 App

​        App 设计工具是在 R2016a 中引入的包含丰富功能的交互式开发环境,是在 MATLAB 中构建 App 的推荐环境。它包括完全集成的 MATLAB 编辑器版本。布局设计和代码视图具有紧密的关联,使得您在一个视图中所做的更改能够立即对另一个视图产生影响。它提供了大量交互式组件,包括日期选择器、树和图像组件。它还提供了网格布局管理器和自动调整布局选项等功能,使App 能够检测和适应屏幕大小的变化。有关详细信息,可以参考使用 App 设计工具开发 App

​如图所示:

Weather visualization app in App Designer Design View

使用 MATLAB 函数以编程方式构建 App

​        也可以完全使用 MATLAB 函数为 App 的布局和行为方式编写代码。在此方法中,可以使用 uifigure 或 figure 函数创建一个图窗以用作 UI 的容器。然后,以编程方式向其中添加组件。每种类型的图窗支持不同组件和属性。uifigure 函数是构建新 App 的推荐函数,因为它创建专为 App 构建而配置的图窗。UI 图窗支持的现代图形和交互式 UI 组件类型与 App 设计工具所支持的相同。

​如图所示:

Code for a mortgage calculator app in the MATLAB Editor, and a UI figure window with the running app

构建实时编辑器任务

​        要创建可嵌入到实时脚本中的界面,请构建实时编辑器任务。实时编辑器任务表示一系列 MATLAB 命令,这些命令在用户探查参数时自动生成。使用任务可缩短开发时间、减少错误并缩短在绘图上花费的时间。

        可以通过定义 matlab.task.LiveTask 基类的子类,以编程方式创建实时编辑器任务。然后,以编程方式将组件添加到任务中以配置用户界面,并编写代码为任务生成 MATLAB 命令和输出。有关详细信息,请参阅开发实时编辑器任务。

        也可以通过在包含交互式控件的实时编辑器中选择和转换代码来创建实时编辑器任务。支持的控件包括数值滑块、数值微调器、下拉列表、复选框、编辑字段、按钮和文件浏览器。有关详细信息,可以参考Create Live Editor Task from Selection。 (自 R2023b 起)

​如图所示:

Normalize Vector Data Live Editor task in a live script with generated code, and the Live Editor task gallery with the Normalize Vector Data task in the "My Tasks" section

http://www.lryc.cn/news/246857.html

相关文章:

  • laravel实现发送邮件功能
  • 概要设计检查单、需求规格说明检查单
  • 达梦列式存储和clickhouse基准测试
  • 【Web】NewStarCtf Week2 个人复现
  • Python实现Windows服务自启动、禁用、启动、停止、删除
  • 【华为OD题库-043】二维伞的雨滴效应-java
  • 百度手机浏览器关键词排名优化——提升关键词排名 开源百度小程序源码系统 附带完整的搭建教程
  • Git 的基本概念和使用方式。
  • MarkDown学习
  • 案例:某电子产品电商平台借助监控易保障网络正常运行
  • IntelliJ IDEA 中有什么让你相见恨晚的技巧
  • 游戏被攻击了怎么办
  • MySQL 索引类型
  • 哈希表——闭散列表
  • 【ArcGIS Pro微课1000例】0036:栅格影像裁剪与提取(矢量范围裁剪dem高程数据)
  • Doris-Routine Load(二十七)
  • linux驱动.之 网络udp应用层测试工具demon(一)
  • 【Flutter】graphic图表的快速上手
  • DeepMind 推出 OPRO 技术,可用于优化 ChatGPT 提示
  • 企业网络中的身份安全
  • 智能优化算法应用:基于正余弦算法无线传感器网络(WSN)覆盖优化 - 附代码
  • 创建一个带有背景图层和前景图层的渲染窗口
  • Docker 运行 Oracle Autonomous Database Free Container
  • 《2023全球隐私计算报告》正式发布!
  • JAVA sql 查询2
  • 为第一个原生Spring5应用程序添加上Log4J日志框架!
  • 单片机复位电路
  • 11.28 知识回顾(Web框架、路由控制、视图层)
  • osgFX扩展库-异性光照、贴图、卡通特效(1)
  • SELinux零知识学习三十一、SELinux策略语言之角色和用户(2)