Matlab GUI 自动化?

2023-12-14

假设有人使用 GUIDE 制作了一个 Matlab GUI。现在我想在编程环境中使用该代码 - 这不是人在循环中。对我来说,“编写”人类与 GUI 交互的最简单方法是什么,以便以适当的顺序操纵各种控件,使工具处理我的数字并获得其结果?我正在寻找一种非侵入性的方式来重用该工具的功能。我调用 Matlab 功能的理想编程环境是 Java。

我可以打开 GUIDE .fig 并跟踪各个控件上的所有回调函数,但设计模式似乎是将所有数据推入handles 变量中。

我能够使用 Matlab Builder JA for Java 生成 java 类(如果这有任何帮助的话)。任何建议,将不胜感激。


MATLAB GUI 是 Java GUI。对于 GUI 自动化,Yair Altman 的博客上最近有一篇文章:http://undocumentedmatlab.com/blog/gui-automation-robot/

仅当您可以重写应用程序时,以下内容才适用。

对于您这样的任务,通常不需要任何形式的 GUI 自动化。应用程序应具有以下架构: 模型->业务逻辑->GUI。每一层都与其上面的层解耦 -Model一无所知商业逻辑它一无所知GUI。然后就可以以编程方式调用业务逻辑,甚至无需显示 GUI。Here是在 MATLAB 中实现 MVC 的示例。

因此,应避免使用 GUIDE。有一个无证的布局管理器在MATLAB中,也有一些关于文件交换的内容。

在您的情况下,您可以将整个业务逻辑放在 GUI 逻辑之外,使 GUIDE 回调除了调用您的业务逻辑函数之外什么都不做。

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

Matlab GUI 自动化? 的相关文章

随机推荐

  • 没有 StreamReader 构造函数接受字符串

    我正在将 NET 4 6 1 控制台应用程序移植到 NET Core 我安装了 NETStandard Library 1 6 但它不允许我将文件路径字符串传递到 StreamReader 构造函数中 查看定义确认它不可用 它去哪儿了 这是
  • 在Python中使用静态地址和偏移量从进程读取内存地址

    我正在尝试在 Python 中读取另一个进程的内存 并且我有程序的静态地址和所有偏移量 我正在使用win32api去做这个 我已经可以使用没有偏移量的地址读取进程的内存 但我不知道如何使用偏移量 我已经尝试过该脚本这个答案但它返回 1 我已
  • 使用 python 和 numpy 进行二维卷积

    我正在尝试使用 numpy 在 python 中执行二维卷积 我有一个二维数组 如下所示 内核 H r 代表行 H c 代表列 data np zeros nr nc dtype np float32 fill array with som
  • 如何在foreach迭代中修改多维数组的子元素

    我试图修改多维数组的每个数组元素中第一个子元素的内容 但是 如果我通过引用传递所述元素 则会收到错误消息 不是预期的 我是否需要放弃 foreach arr as list 语法并恢复到标准 for 循环并使用计数器变量进行访问 forea
  • 谷歌街景标题问题

    我正在从事一个项目 我需要显示走向道路的谷歌地图街景 我为全景对象设置了标题 0 但对于不同的位置 它显示的标题不同 例如 在某些情况下 它显示前往街道 而对于某些位置 它显示前往家 panorama theMap getStreetVie
  • 协助UI Dispatcher处理大量的方法调用

    以下帖子已成为bit 比预期更长 我对此表示歉意 但也许你会发现阅读起来很有趣 也许你有一个想法可以帮助我 我正在开发一个小型应用程序 其 GUI 由许多列表控件组成 每个列表控件都有一个thread与之相关的是永久生产正在添加到列表中的字
  • Android:SlidingDrawer的高度可以用wrap_content设置吗?

    我正在尝试实施一个SlidingDrawer将占据整个屏幕宽度 但其高度由其内容动态确定 换句话说 标准fill parent宽度和布局行为wrap content对于高度 这正是我在布局 XML 中指定的方式 见下文 但滑动抽屉始终打开到
  • 无法在 VBA (Excel) 中迭代哈希表

    我正在使用哈希表 引用 mscorlib dll 我用数据填充它 我可以获取任何项目 只要我将请求类型转换为与哈希表中存储的类型完全相同的类型 ContainsValue Key 所有这些都有效 但我无法通过 For Each 循环迭代它
  • 使用 Cython 将 malloc 缓冲区从 C 转换为 Python,而不进行复制?

    在 Cython 中 假设我有一个 C 函数 它返回一个使用 malloc 分配的大缓冲区 并预计稍后使用 free 释放 现在我需要将此缓冲区作为 字节 str 对象传递给 Python 它将获得它的所有权 并在 str 对象消失时调用
  • 检查字符串数组中的整数

    我正在尝试检查字符串数组是否存在转换后的整数 这位于一个过程中 其中 nc ecosite is an integer多变的 current consite是一个字符串数组 ecosite is an integer current eco
  • 如何用java模拟真实的鼠标点击?

    我正在尝试在 Java 中执行鼠标单击 以单击外部程序中的某些内容 为此 我正在使用java awt robot 以及以下代码 Robot bot new Robot int mask InputEvent MOUSE BUTTON1 DO
  • Delphi Android - 检测设备方向变化

    Delphi Android 开发新手 如何检测屏幕方向已更改 即从肖像到风景 反之亦然 发生这种情况时如何触发代码 例如 我有一个图像尺寸为 300x200 在纵向模式下 但当设备切换到横向时 我希望它调整并占据全屏宽度 在你的表单中实现
  • 如何降低 RealityKit 中阴影的不透明度?

    我在 Reality Composer 中构建了一个场景 并在其中添加了 3 个对象 问题是阴影太强烈 黑暗 我尝试使用 RealityKit 中的定向光this答案而不是 Reality Composer 中的默认灯光 因为您没有调整其中
  • 将所有链接与特定文本匹配

    我正在寻找 PHP 中的正则表达式 它将锚点与其上的特定文本相匹配 例如 我想获得带有文本 mylink 的锚点 例如 a href blabla mylink a 所以它应该匹配所有锚点 但前提是它们包含特定文本所以它应该匹配这些字符串
  • 仅删除唯一元素

    有很多关于如何删除重复项和类似问题的资源 但我似乎无法找到任何有关删除唯一元素的资源 我正在使用 SWI Prolog 但我不想使用内置程序来实现此目的 也就是说 调用remove unique 1 2 2 3 4 5 7 6 7 X 应该
  • 为什么 Fragment 中的 Viewmodel 实例会泄漏

    我正在使用视图模型和实时数据来观察编辑文本视图中的变化 如下所示 当我使用leakcanar运行应用程序时 它向我显示内存泄漏 Mainactivity fragviewmodel泄漏 FragViewModel model Overrid
  • C# - 如何使用 DirectorySecurity.SetOwner() ?我有麻烦了

    我很难弄清楚SetOwner 方法 就我而言 我通过代码在 Active Directory 中创建了一个用户 然后为该用户创建了一个文件夹 一切正常 但我无法将新创建的用户设置为文件夹的所有者 我不是 C 专家 所以我很难理解Direct
  • 根据文件名中的日期创建批处理文件并移动文件

    我有大量的 Excel 文件 其文件名都以时间戳结尾 如下所示 示例文件 2018 08 24 110222 xlsx 我想根据时间戳的月份和年份移动所有这些文件 但我希望文件夹名称为上个月 因此 对于上面的示例 我想创建一个名为 July
  • django.db.migrations.exceptions.InconsistencyMigrationHistory

    当我跑步时python manage py migrate在我的 Django 项目中 我收到以下错误 Traceback most recent call last File manage py line 22 in
  • Matlab GUI 自动化?

    假设有人使用 GUIDE 制作了一个 Matlab GUI 现在我想在编程环境中使用该代码 这不是人在循环中 对我来说 编写 人类与 GUI 交互的最简单方法是什么 以便以适当的顺序操纵各种控件 使工具处理我的数字并获得其结果 我正在寻找一