为什么这个 MATLAB 类不保留其属性?

2023-12-05

我在这里遗漏了一些非常简单的东西。我有一个 MATLAB 类,它创建一个包含两个按钮的图窗,每个按钮调用相同的函数,但这些按钮的句柄未保留在该函数中,我不知道为什么。

这是课程,简化了......

classdef Test

    properties
        Figure
        ButtonA
        ButtonB
    end

    methods    
        function app = Test()       
            app.Figure = figure();

            app.ButtonA = uicontrol('Style', 'pushbutton', ...
                'String', 'Button A', ...
                'Position', [10, 10, 100, 20], ...
                'Callback', @app.PressButton);
            app.ButtonB = uicontrol('Style', 'pushbutton', ...
                'String', 'Button B', ...
                'Position', [10, 120, 100, 20], ...
                'Callback', @app.PressButton);
        end

        function PressButton(app, Button, ~)
            Button
            app.ButtonA
            app.ButtonB
        end
    end
end

如果我调用它,它会打开图形,并显示按钮的句柄编号:

>> T = Test
T = 
  Test with properties:

     Figure: 8
    ButtonA: 745.000122070313
    ButtonB: 103.002319335938
>> T.ButtonA
ans = 745.000122070313
>> T.ButtonB
ans = 103.002319335938

如果我按下按钮 A,该函数将返回两个空值,就好像属性尚未设置一样:

Button =
          745.000122070313
ans =
     []
ans =
     []

如果我按下按钮 B,该函数会返回按钮 A 的值,但会返回按钮 B 的空值:

Button =
          103.002319335938
ans =
          745.000122070313
ans =
     []

如果有任何建议,我将非常感激。


您应该从句柄继承您的类。 检查matlab之间的差异value-级和handle-class here.

为此,请更改代码中的第一行:

 classdef Test < handle
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么这个 MATLAB 类不保留其属性? 的相关文章

  • 图像分析-光纤识别

    我是图像分析新手 您知道如何以仅获取纤维的方式对该图像进行二值化吗 我尝试过不同的阈值技术等 但没有成功 我不介意应该使用什么工具 但我更喜欢 NET or Matlab PS 我不知道该把答案放在哪里 所以我把它放在StackOverfl
  • 类属性在功能上依赖于其他类属性

    我正在尝试使用静态类属性来定义另一个静态类属性 我认为可以通过以下代码来实现 f lambda s s 1 class A foo foo bar f A foo 然而 这导致NameError name A is not defined
  • Matlab-如何在曲线上绘制切线

    我在 matlab 中绘制了一个图表 plot x y 我的图表有不同的斜率 我如何在每个斜率上绘制切线并计算斜率的系数 如果您没有用于绘制点的显式函数 您可以使用有限差分 http en wikipedia org wiki Finite
  • 继续在 Matlab 中一遍又一遍地播放声音?

    我正在尝试创建一个 MATLAB 程序来每隔几分钟一遍又一遍地播放声音 现在我将其设置为每隔几秒播放一次 只是为了消除系统中的一些错误 但是 当我的程序尝试重播声音时 我收到此错误 Error using gt audioplayer au
  • 将此 MATLAB 代码转换为 Python 时我做错了什么?

    我正在努力将生成波形的 MATLAB 代码转换为 Python 就上下文而言 这是原子力显微镜带激发响应的模拟 与代码错误无关 在 MATLAB 中从 r vec 生成的图形与我在 Python 中生成的图形不同 我是否正确地将 MATLA
  • “单体”是什么意思?

    我在课堂上看到过它 我怀疑这意味着该类可以被分解为逻辑子单元 但我找不到一个好的定义 你能举一些例子吗 谢谢您的帮助 编辑 我喜欢聪明的回复 但我显然指的是软件上下文中的 整体 我了解巨石 巨石 支石墓以及所有与石头相关的背景 哎呀 我的国
  • 如何从另一个类访问变量而不创建新对象

    我过长的标题说明了一切 我希望能够从另一个类访问变量而不创建新对象 目前我知道如何访问另一个类的变量的唯一方法是 Control control new Control int dirtCount control dirtCount 然而
  • 对多个属性使用一种设置方法 MATLAB

    我有几个属性基本上使用相同的属性set method classdef MyClass properties A B end methods function mc MyClass a b Constructor mc A a mc B b
  • 如何在Matlab中自定义轮廓线?

    我正在准备一个等高线图 我应该在其中突出显示特定级别的等高线 例如 我的轮廓线值位于 1 和 1 之间 我想突出显示与值 0 相对应的线 我尝试使用以下过程来执行此操作 M c contourf longitude latitude del
  • Matlab:掩码/创建一个知道其原点且具有一定半径的圆形 roi

    只是一个简单的问题 我有一张图像 并且提取了某个点 特征 我知道每个帧中该点的坐标 说 x1 和 y1 我需要一个圆形 ROI 形式 该点在图像上具有我选择的半径 我尝试了 impoly 和 roipoly 当我知道图像中的要点时 不知道如
  • 在 MATLAB 中使用 FFT 的频率响应

    这是场景 使用频谱分析仪 我有输入值和输出值 样本数是32000采样率为2000样本 秒 输入是正弦波50 hz 输入为电流 输出为压力 单位 psi 我如何使用 MATLAB 根据这些数据计算频率响应 使用 MATLAB 中的 FFT 函
  • Jquery 检测选项卡导航的相同类和文本

    有谁有检测相同文本的经验 和班级 这是我当前的代码 ul nav li click function ul slideMove li fadeOut slow var sharedata this text ul slideMove li
  • 两个 y 轴与相同的 x 轴[重复]

    这个问题在这里已经有答案了 可能的重复 在单个图中绘制 4 条曲线 具有 3 个 y 轴 https stackoverflow com questions 1719048 plotting 4 curves in a single plo
  • MATLAB 滚动图

    我有一个脑电图数据库 我想绘制它 数据库是一个19 1000 134的矩阵 其中 19 是通道数 在第一种方法中 我只使用一个渠道 1000 个样本大小 采样率为 500 Hz 时为 1000 个点 即 2 秒数据 134 epochs的数
  • Matlab - 如果值包含xxx,则删除元胞数组中的行

    在 Matlab 中 如何删除包含变量字符串的元胞数组中的元胞 假设我的元胞数组是 C svnTrunk RadarLib radarlb utilities scatteredInterpolant m C svnTrunk RadarL
  • 在另一列中添加具有特定条件的一列,如 excel 的 sumif

    我有一个像这样的矩阵 A 1 2 2 3 3 4 4 5 5 6 6 8 7 9 8 5 9 4 现在我想添加第二列 条件是如果 limit 0 interval 3 且 limit limit interval 或者换句话说 当第 1 列
  • 如何在 Matlab 中使用谷歌翻译?

    我正在编写一个程序 使用 Matlab 列出电影字幕文件中的所有唯一单词 现在我有一个独特的单词列表 我想将其翻译成我的语言并在观看电影之前了解其含义 有谁知道如何在 Matlab 中使用 Google Translate 以便完成我的脚本
  • Typescript 继承:扩展基类对象属性

    当扩展一个类时 我可以轻松地向它添加一些新属性 但是 如果当我扩展基类时 我想向基类的对象 简单对象的属性 添加新属性怎么办 这是一个带有一些代码的示例 基类 type HumanOptions alive boolean age numb
  • 不等间隔时间序列的移动平均线

    我有一个证券交易所股票价格的数据集 时间 价格 但数据点之间的间隔并不相等 从 1 到 2 分钟不等 在这种情况下计算移动平均值的最佳实践是什么 如何在Matlab中实现呢 我倾向于认为 点的权重应该取决于自上一个点以来的最后时间间隔 Ma
  • MATLAB - 如何将子图一起缩放?

    我在一张图中有多个子图 每个图的 X 轴是相同的变量 时间 每个图上的 Y 轴都不同 无论是它所代表的内容还是数据的大小 我想要一种同时放大所有图的时间尺度的方法 理想情况下 可以在其中一张图上使用矩形缩放工具 并让其他图相应地更改其 X

随机推荐

  • Coredata PerformBlock 然后返回新值

    如果我正在使用 如何返回保存在 coredata 中的新对象performBlock保存一个 ManagedObjectContext 要求是 在 coredata 中添加一个条目 然后返回它 我的代码是这样的 create a priva
  • C# 列表:使用大小初始化,为什么在 .Add() 之后才能使用 [] 访问?

    这对于数组来说效果很好 int a new int 10 for int i 0 i lt 10 i a i i 但这会抛出一个带有列表的 ArgumentOutOfRangeException List
  • 使用 jQuery .trigger() 将 keydown 发送到 Angular 指令

    我创建了一个编辑指令来将 html 输入包装在一个精美的框架中 现在我正在创建一个单元测试来检查一旦输入输入 表单控制器的脏状态就被设置了 我正在使用 jQuery trigger 来模拟这个 但我什么也没得到 var input inpu
  • 这个运算符叫什么以及它的用途是什么 <=>

    我最近在深入研究 Groovy 时遇到了这个神奇的运算符 Groovy 确实让我对 elvis 操作员感到满意 和 我现在经常使用 并且非常希望在 Java 中使用 有了这个新的运算符 我只找到了这个参考 它似乎使比较器变得更容易 我的问题
  • 未获取服务中共享首选项的更新值

    我正在将一些值存储到从小部件启动的活动的共享首选项中 如果我从同一个小部件启动的服务中检索该值 则它不是更新的值 我得到了共享偏好中先前的值 即使我检查了共享首选项 xml 中的该值 我也看到了更新后的值 为什么会发生这种情况 我知道wid
  • 如何更改 Visual Studio 查找结果窗口中活动行的背景颜色?

    我刚刚切换到黑暗主题在 Visual Studio 中 无法在 查找结果 窗口中找到用于更改当前活动行的背景颜色的设置 最明显的地方是在 工具 选项 字体和颜色 查找结果窗口 设置中 但没有活动行的选择 我还查看了 Visual Studi
  • 单击时如何在角度中添加删除(切换)类

    我想在单击时向 li 添加活动和开放类 并在再次单击时删除这些类 li class treeview li li ts menuToggle event any this renderer addClass 您可以使用模板引用变量来切换模板
  • 使用 Delphi 调用 Http GET url 最简单的方法是什么?

    我想在我的应用程序中调用一个 Web 服务 我可以通过导入 WSDL 来使用它 或者仅使用带有 URL 和参数的 HTTP GET 所以我更喜欢后者 因为它很简单 我知道我可以使用 indy idhttp get 来完成这项工作 但这是非常
  • 使用 Groovy 脚本从 Jenkins 中的工作区读取文件

    我想使用 Groovy 插件添加一个构建步骤来读取文件并根据文件的内容触发构建失败 如何在 groovy 插件中注入工作区文件路径 myFileDirectory Get workspace filepath here myFileName
  • 错误 TF30063:您无权访问...\DefaultCollection

    我在用着TFS 预览 Team Foundation Service 与我使用 Visual Studio 2012 的一个项目一起使用 我还在我的大多数项目中使用本地 TFS 服务器 当我在使用 TFS 预览后使用本地 TFS 并返回使用
  • 什么取代了 HTML5 表格中的 cellpadding、cellspacing、valign 和align?

    In 视觉工作室 我看到这些警告 验证 HTML 5 属性 cellpadding 不是元素 table 的有效属性 验证 HTML 5 属性 cellspacing 不是元素 table 的有效属性 验证 HTML 5 属性 valign
  • 将字符串值转换为 double 类型的二维数组

    我有一个字符串 String stringProfile 0 4 28 10 4 93 20 3 75 我试图将它变成一个数组 如下所示 double values 0 4 28 10 4 93 20 3 75 我已格式化字符串以删除所有空
  • 如何访问记录属性?

    我需要访问 记录属性并设置 获取该属性值 首先 我想访问属性 但我不能 怎么了 版本 德尔福 XE6 示例代码 type TmyRecord record private Str String public property StrProp
  • async/await 函数比较

    我试图理解 async await 我想知道这两种方法是否相同 如果不是 你能解释一下为什么吗 public async Task
  • Beautifulsoup 发现没有值的标签和属性?

    我试图获取具有属性但没有值的特定标签的内容 例如我怎样才能得到它 cont
  • 我关闭不起作用

    我正在使用 VB net 我今天将应用程序连接到数据库时遇到问题 因此我想添加错误处理来关闭表单 问题是当我把Me close在一个表格中 这个表格仍然开放 我用的是Form Closing事件处理程序来验证它是否被调用 然后逐步运行我的应
  • 为什么自定义验证器的错误消息没有显示在消息框中?

    我已经尝试了很多方法 但验证摘要中未显示自定义验证器的错误消息 但它 ValidationSummary 显示了所有其他类型验证器的错误消息
  • 如何计算一个人的年龄(年、月、日)?

    我想计算给定出生日期和当前日期的人的年龄 以相对于当前日期的年 月和日为单位 例如 gt gt gt calculate age 2008 01 01 1 years 0 months 16 days 任何指向执行此操作的算法的指针都将受到
  • Ruby映射方法语法问题[重复]

    这个问题在这里已经有答案了 可能的重复 我当时正在看Railscasts 更多虚拟属性剧集 在那一集中 瑞安一度使用了一种我无法理解的映射方法语法 有人可以解释一下吗 tags map name join Tags是Tag Model的一个
  • 为什么这个 MATLAB 类不保留其属性?

    我在这里遗漏了一些非常简单的东西 我有一个 MATLAB 类 它创建一个包含两个按钮的图窗 每个按钮调用相同的函数 但这些按钮的句柄未保留在该函数中 我不知道为什么 这是课程 简化了 classdef Test properties Fig