在用 App 设计工具创建的 App 内共享数据

目录

定义属性

访问属性

示例

共享绘图数据和下拉列表选择


        使用属性是在 App 内共享数据的最佳方法,因为属性可供 App 内的所有函数和回调访问。所有 UI 组件都是属性,因此可以使用以下语法来访问和更新回调中的 UI 组件:

app.Component.Property

        例如,以下命令将会获取并设置一个仪表的 Value 属性。在此示例中,仪表的名称为 PressureGauge。

x = app.PressureGauge.Value; % Get the gauge value
app.PressureGauge.Value = 50; % Set the gauge value to 50

        但是,如果想要共享某个中间结果或多个回调需要访问的数据,则应定义公共或私有属性来存储数据。公共属性在 App 内部和外部均可访问,而私有属性只能在 App 内部访问。

定义属性

代码视图提供了多种不同的方法来创建属性:

  • 编辑器选项卡中属性按钮的下半部分展开下拉菜单。选择私有属性公共属性

    Property button options.

  • 点击代码浏览器中的属性选项卡,展开 

    Plus

     按钮上的下拉列表,然后选择私有属性公共属性

    Properties tab in the Code Browser. The tab contains a search bar to find properties, and a plus button to add a new property.

        在选择用于创建属性的选项后,App 设计工具会在 properties 块中添加一条属性定义和一条注释。

properties (Access = public)Property % Description
end

        properties 块是可编辑的,因此可以更改属性的名称并编辑注释,以描述该属性。例如,以下属性存储平均成本值:

properties (Access = public)X % Average cost
end

        如果代码需要在 App 启动时访问某个属性值,您可以在 properties 块或在 startupFcn 回调中对其值进行初始化。

properties (Access = public)X = 5; % Average cost
end

        要限制某属性可以存储的值的类型,请在属性定义中将数据类型与该属性相关联。例如,以下代码要求赋给 X 的值必须为与 double 兼容的类型,并且所赋的任何值都存储为 double 类型。

properties (Access = public)X double % Average cost
end

访问属性

        定义属性后,您可以使用语法 app.PropertyName 在 App 代码中的任何位置访问和设置属性值。

y = app.X  % Get the value of X
app.X = 5; % Set the value of X

示例

共享绘图数据和下拉列表选择

        此 App 说明如何共享私有属性和下拉列表中的数据。它有一个名为 Z 的私有属性,用于存储绘图数据。编辑字段的回调函数会在用户更改样本大小时更新 Z。Update Plot 按钮的回调函数将会获取 Z 的值和颜色图选择,以便更新绘图。

如图所示:

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

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

相关文章

MySql的增、删、改、查(MySql数据库学习——五)

增(数据添加/插入数据) 使用 INSERT INTO SQL 语句来插入数据。我们可以通过 mysql> 命令提示窗口中向数据表中插入数据,或者 通过PHP 脚本来插入数据。 sql语句: INSERT INTO table_name ( field1, field2,...fieldN ) …

人生感悟 | 又是一年,眼看要2024了

哈喽,你好啊,我是雷工! 刚过完大雪节气没两天,气温开始急转直下,走在路上明显感觉冷了许多。看天气预报很多地区已经开始下雪了。 看日历已经12月9号了,12月份,一年的最后一个月,2…

1.3 第一个C程序

一、Dev-C的安装 下载地址:https://sourceforge.net/projects/orwelldevcpp/ 二、Dev-C简单的使用 2.1 首次打开配置 2.2 第一个程序的编辑、编译、运行 三、Hello Word程序讲解 3.1 程序框架 几乎所有的程序都需要这一段代码 3.2 输出 printf("Hello World…

Ansible介绍与安装

Ansible目前是运维自动化工具中最简单、容易上手的一款优秀软件,能够用来管理各种资源。用户可以使用Ansible自动部署应用程序,以此实现IT基础架构的全面部署。例如,借助于Ansible,我们可以轻松地对服务器进行初始化配置、安全基线…

uniapp怎么获取微信步数

微信步数获取的背景 微信步数是指用户在微信运动中记录的步数数据。微信提供了开放能力,允许第三方应用获取用户授权后的微信步数数据,以便进行进一步的数据分析和展示。使用时报错:fail api scope is not declared in the privacy agreemen…

【CMU 15-445】Lecture 12: Query Execution I 学习笔记

Query Execution I Processing ModelsIterator ModelMaterialization ModelVectorization Model Access MethodsSequential ScanIndex Scan Modification QueriesHalloween Problem 本节课主要介绍SQL语句执行的相关机制。 Processing Models 首先是处理模型,它定义…

单机架构到分布式架构的演变

目录 1.单机架构 2.应用数据分离架构 3.应用服务集群架构 4.读写分离 / 主从分离架构 5.引入缓存 —— 冷热分离架构 6.垂直分库 7.业务拆分 —— 微服务 8.容器化引入——容器编排架构 总结 1.单机架构 初期,我们需要利用我们精干的技术团队,快…

SpringIOC之PropertySource

博主介绍:✌全网粉丝5W+,全栈开发工程师,从事多年软件开发,在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战,博主也曾写过优秀论文,查重率极低,在这方面有丰富的经验✌ 博主作品:《Java项目案例》主要基于SpringBoot+MyBatis/MyBatis-plus+…

vue3中ref及reactive的说明

目录 1.响应式说明 2.vue3的ref及reactive的使用 3.reactive响应式失效问题 4.总结 1.响应式说明 vue的响应式是vue框架中的核心概念之一,它是指当数据发生变化时,vue能够自动更新视图。vue2的响应式是基于Object.defineProperty进行实现的。 当你把…

WebLangChain_ChatGLM:结合 WebLangChain 和 ChatGLM3 的中文 RAG 系统

WebLangChain_ChatGLM 介绍 本文将详细介绍基于网络检索信息的检索增强生成系统,即 WebLangChain。通过整合 LangChain,成功将大型语言模型与最受欢迎的外部知识库之一——互联网紧密结合。鉴于中文社区中大型语言模型的蓬勃发展,有许多可供利…

windows下使用logstash同步跨网络集群的数据

我们在开发环境过程中,可能会遇到这样的场景。我们可以通过VPN访问远端的机房。有可能还要跨机房访问。这篇文章演示使用logstash,在windows上,去同步跨网络环境的不同机房之间的数据。 此方式受网络限制。适合同步小规模数据。 下载logstash…

C# DotNetCore AOP简单实现

背景 实际开发中业务和日志尽量不要相互干扰嵌套,否则很难维护和调试。 示例 using System.Reflection;namespace CSharpLearn {internal class Program{static void Main(){int age 25;string name "bingling";Person person new(age, name);Conso…