图像缩略图

应用程序设计师迁移工具的MATLAB指南

使用指南到应用程序设计器迁移工具来帮助您将指南应用程序转换到应用程序设计器。

305下载

更新2021年3月10日

编者按:此文件被选为Matlab Central挑选本周

R2020A是将应用程序迁移到App Designer的推荐版本。

从R2020a开始,对迁移工具的改进大大减少了在app Designer中运行应用程序所需的手动代码更新时间和数量。这些改进有助于使你的guidestyle回调代码与迁移后的应用程序中的App Designer UI组件兼容。然而在R2018a到R2019b版本中,你必须手动更新所有的函数和回调代码来与App Designer一起工作。
有关迁移工具最新版本的详细信息,请参见指南迁移策略(//www.tianjin-qmedu.com/help/matlab/creating_guis/differences-between-app-designer-and-guide.html.)在Matlab文件中。

*** 背景 ***
在R2019B中,MathWorks宣布,将在未来的释放中删除Matlab中的应用程序的指南设计环境。Guide是基于较旧的第三方技术构建,无法支持Matlab用户请求的现代Web的工作流程和功能。万博1manbetx

App Designer首次发布于R2016A,是指南的更换,是建议在Matlab中构建应用的建议环境。它是基于Web的技术构建,如JavaScript,HTML和CSS,因此环境和IT构建的应用程序是Web友好的。

App Designer提供:
•改进的设计画布和扩展组件集
•用于管理应用内的数据的强大编程模型
•应用程序共享桌面,Web和Matlab在线

将您的指南应用程序迁移到App Designer允许您以交互方式继续开发应用程序的布局。它还允许您利用App Designer提供的新功能和改进。有关功能列表,请参阅比较指南和App Designer(//www.tianjin-qmedu.com/s manbetx 845products/matlab/app-designer/comparing-guide-and-app-designer.html?s_tid=srchtitle.)。

***迁移工具的功能***
应用程序设计器指南迁移工具是一个半自动化的工具,可以将您的指南应用程序转换为应用程序设计器。它生成一个MLAPP文件,其中包含:
•应用程序设计器组件,属性配置和相当于在指南中创建的配置
•您在指南中定义的函数和回调代码的副本

该工具还生成迁移报告,列出任何限制或不受支持的功能,建议操作来解决问题(如果有)。万博1manbetx

评论和评级(75.

伊恩杜菲

我在这里使用这个工具的运气更好,而不是这里的大多数审稿人。它将我的应用程序的布局完全按照指南完成,所有我需要做的是解决如何处理下拉列表。我会在任何一天使用此迁移工具从头开始重新制作应用程序。

John Mark Enhaynes.

哦,哦,此外,在将我的工作转换为App Designer指南后,它是一个完全混乱的。运行应用程序时只显示我的工作中的25%。这是疯狂的,matlab。我希望你应该考虑更新指南,而不是制作一个全新的指南。

Zechuan Chen.

威廉,当指南设计环境被删除时,使用UIControl的指南和应用程序构建的应用程序将继续运行。这种支持将万博1manbetx留下可预见的未来。消息传达的是,当删除该工具时,您将无法在指南中交互方式编辑应用程序(即,没有拖放功能),但您有几个选项以继续编辑基于指南的应用程序。选项包括导出到.m文件,用于手动编辑或迁移到应用程序设计器以进行交互式拖放编辑;这两种情况都支持UICon万博1manbetxtrol。
有关详细信息,请访问“比较指南和App Designer”页面。
//www.tianjin-qmedu.com/s manbetx 845products/matlab/app-designer/comparing-guide-and-app-designer.html?s_tid=srchtitle.

沃尔夫冈·雅克

威廉·蒂埃克斯

“在Matlab中建立应用程序的指南设计环境将被删除”实际上是什么意思?只是删除了指南工具,还是UIControl?

以色列西尔柏

你好,Dain, actxcontrol (https://www.mathwands.com/help/matlab/ref/actxcontrol.html.)App Desi万博1manbetxgner不支持,并将在MATLAB的未来版本中删除,但ACTXSERVER(//www.tianjin-qmedu.com/help/matlab/ref/actxserver.html),并且仍万博1manbetx然可以用来帮助解决您的目标,这取决于您的用例。App Designer还有其他可扩展选项,如自定义UI组件(//www.tianjin-qmedu.com/help/matlab/developing-custom-ui-component-classes.html.)和uihtml (https://www.mathwands.com/help/matlab/ref/uihtml.html.)这可能有助于你。我们有兴趣更多地了解您的目标,并帮助考虑替代解决方案。万博 尤文图斯请向我们发送一条消息//www.tianjin-qmedu.com/matlabcentral/profile/contact/5775824我们很乐意和你一起设置一段时间。

Dain Jeremie.

什么是“ActxServer”功能的替代解决方案,它不适用于App Designer?
如果没有此功能,我们如何在App Designer中调用外部程序?

您网站上的帮助并不多:https://fr.mathworks.com/s manbetx 845products/matlab/app-designer/java-swing-alterniving.html?s_tid=mwa_osa_a.

我没有使用App Designer而不是GUI的UndAstand Matlab策略。

小东刘

亚当·H

我看到这是针对R2020B更新的。此工具R2020A和20B之间的更改是什么?

嗨HADI,迁移工具在指南中设置了图形的位置属性。如果图形的位置超出屏幕尺寸,指南有一些额外的逻辑,可以在屏幕上完全放置。App Designer不这样做,因此解决问题,您可以使用App Designer中的属性检测器调整迁移的指南应用程序的图形位置值,或者您可以在迁移的应用程序启动功能中使用MoveGui命令有应用程序位于屏幕上。

哈迪AK.

我有一个非常简单的GUI,由指南开发。当我进行迁移时,在设计视图中,不知何故,一切都类似于主导地址,但是当我运行它时,似乎GUI进入屏幕的上角,我无法移动它!!迁移工具的版本是“用于Matlab 20.1.0 Matlab的App Designer迁移工具指南”

嗨Michael,根据您的描述,我们无法重现此问题。请联系技术支持,我们很乐意帮助您解决这个问题。万博1manbetx您可以通过support@mathworks.com万博1manbetx联系技术支持或创建帮助票证//www.tianjin-qmedu.com/万博1manbetxsupport/contact_us.html..如果可能,请包括您的指南应用程序或您的指南应用程序的版本,可再现此问题。

迈克尔Mullaney

不确定我的第一条消息发生了什么,但我无法使用App Designer Migration工具的最近迁移的指南应用程序编辑代码视图中的代码。我不是指在灰色的区域中的不可编辑代码,而是白色代码本身。我在.mlapp代码中有一些简单的错误,例如回车返回将语句结束移动到下一行,具体:

app.axesml.yticklabel = {'1';'0.8';'0.6';'0.4';'0.2';'0';'-0.2';'-0.4';'-0.6';'-0.8'; '-1
'};

我收到错误:

'带引号的字符向量是未终止的'

我无法编辑此项以修复它,我也不能对代码进行任何其他更改。这个问题是我刚刚升级到的版本2020A。我重新启动了我的电脑和所有这些。我没有安装迁移工具的任何错误。我正在运行Windows 10,刚刚更新。

米歇尔赫沙彻

嗨Edith,似乎可能存在迁移工具的问题。尝试概述以下步骤//www.tianjin-qmedu.com/matlabcentral/answers/318635-how-do-i-perform-a-clean-re-installation-of-a-万博1manbetxsupport-package.进行干净的重新安装尝试。如果无法解决您的问题,请联系安装和许可支持以获取安装迁移工具的帮助。万博1manbetx您可以在support@mathworks.com发送电子邮万博1manbetx件或者在帮助票证中发送电子邮件//www.tianjin-qmedu.com/万博1manbetxsupport/contact_us.html.

伊迪丝·瓦莱

每次单击浏览按钮以选择要迁移到App Designer的文件,我收到以下errosr:
使用消息/ getString时出错
无法加载消息目录“appmigration:appmigration”。请
检查文件位置和格式。

错误
appmigration.internal.GUIDEAppMigrationTool / BrowseButtonPushed(线
64)
[filename,pathname] = UigetFile('*。',
GetString(消息('appmigration:appmigration:selectfigfile'))))));
使用matlab.ui.control.internal.controller.componentcontroller / executeusercallback(第335行)时出错
当评估Button PrivateButtonPushedFcn时出错。

托马斯,尝试按照以下步骤概述//www.tianjin-qmedu.com/matlabcentral/answers/318635-how-do-i-perform-a-clean-re-installation-of-a-万博1manbetxsupport-package.进行干净的重新安装尝试。如果无法解决您的问题,请联系安装和许可支持以获取安装迁移工具的帮助。万博1manbetx您可以在support@mathworks.com发送电子邮万博1manbetx件或者在帮助票证中发送电子邮件//www.tianjin-qmedu.com/万博1manbetxsupport/contact_us.html.

Thomas Koenig

我没有能够在Mac上安装加载项。我继续收到消息“这个文件夹名称无效。文件夹名称可以包含字母数字字符和' - ','_','。'或'/'。目标文件夹不能被命名为”私有“。无论如何附加组件的安装文件夹I选择在MATLAB的首选项中。默认(“/用户/ ThomaskoEnig / Library / Application Support / MathWorks / Matlab Adv-Ons”)也确实产生了相同的错误消息万博1manbetx

曾俊华,试试下面的步骤//www.tianjin-qmedu.com/matlabcentral/answers/318635-how-do-i-perform-a-clean-re-installation-of-a-万博1manbetxsupport-package.进行干净的重新安装尝试。如果无法解决您的问题,请联系安装和许可支持以获取安装迁移工具的帮助。万博1manbetx您可以在support@mathworks.com发送电子邮万博1manbetx件或者在帮助票证中发送电子邮件//www.tianjin-qmedu.com/万博1manbetxsupport/contact_us.html.

麦胜

我做了一个离线安装,但没有使它成功安装,我得到了一个'支持软件安装程序错误:系统没有必需的matlab转口开始支持包装安装',而我的matlab版本是r2019b万博1manbetx,有人可以提供帮助吗?

EMILITTA迈克尔

Charles,使用指南内置的应用程序将继续在Matlab中持续支持并运行,即使在指南拖放环境不再可用万博1manbetx。此外,通过从指南“文件”菜单中选择“导出到MATLAB-FILE”,可以继续以编程方式编程指南应用程序。要交互式编辑指南应用程序,他们需要将它们迁移到App Designer。

我们不断向App Designer和App Designer迁移工具指南添加新功能,以提高迁移体验。在即将发布的版本中,将通过额外的自动化增强迁移工具,以最大限度地减少迁移应用所需的时间。

对于指南和App Designer之间的最多迄今为止的功能比较,请访问://www.tianjin-qmedu.com/s manbetx 845products/matlab/app-designer/comparing-guide-and-app-designer.html.

查尔斯詹姆斯

强烈建议您不会摆脱指南,除非您可以支持所有功能并使迁移更简单。万博1manbetx由于不支持的功能,我们无法迁移我们的GUI,我们不能浪费时间从头开始重新开发它们。万博1manbetx如果MATLAB未来的发布没有继续支持使用指南建造的GUI,我将非常担心。万博1manbetx

曼努埃尔Ulbing.

是否有Matlab R2016B的迁移工具版本?谢谢!

Pankaj,App Designer迁移工具指南仅适用于R2018A及更高版本。

Pankaj Jha

这与Matlab 2014A兼容

嗨Muhammad,Matlab R2018A和Windows 10支万博1manbetx持迁移工具。概述了以下步骤//www.tianjin-qmedu.com/matlabcentral/answers/318635-how-do-i-perform-a-clean-re-installation-of-a-万博1manbetxsupport-package.进行干净的重新安装尝试。如果无法解决您的问题,请联系安装和许可支持以获取安装迁移工具的帮助。万博1manbetx您可以在support@mathworks.com发送电子邮万博1manbetx件或者在帮助票证中发送电子邮件//www.tianjin-qmedu.com/万博1manbetxsupport/contact_us.html.

我的Matlab版本是2018A,我正在使用Windows 10,错误说:“操作系统或您的Matlab版本不支持此包。”万博1manbetx我认为这是2018年的意思。

Ioana nistia.

App Designer没有工具栏?打开功能消失了吗?颜色定制显着降低?这件新的是一个笑话,为什么发布一些能够少于之前产品的东西?我试图迁移我的一个怪诞,它完全搞砸了这件事,它会带给我一个不合理的时间来使它功能努力,更不用说纠正它的美学。

Hyesung Kim.

没有互联网的时候如何安装?

Lars-Erik Lindgren

每次启动指南并选择迁移或打开我的无与伦比的文件,然后选择迁移我得到建议安装迁移工具,我已经完成了许多次(包括在安装和启动之间的MAC上的退出Matlab 2019B)
为什么MATLAB无法识别迁移工具已安装?

Mike d'Agostino.

这对我来说绝对没什么。我迁移了一个带有20多个元素的指南GUI,我收到了一个带有两个白色盒子的空白应用程序。该报告提供了一点指导,但我必须手动重新创建整个GUI。

快乐博士

如何从AppDesigner中获取相同的功能“可挑选的”?

王东

嗨,是在AppDesigner中支持的任何播放DatacursorMode的计划吗?万博1manbetx

直到修复程序可用,请参阅https://www.mathwands.com/matlabcentral/answers/483471- you-do-uicontrol-components-disappear- after-using-app-designer-migration-tool-in-r2019b-to-migrate-g.对于R2019B(19.2.0)版本的迁移工具的错误的解决方法,该工具阻止了迁移UIControl组件。

R2019B迁移工具(版本19.2.0)有一个错误,导致指南应用程序无法正常迁移。我们正在解决修复程序,并会尽快更新该工具。R2019A和先前版本的迁移工具不会发生此问题。对于给您带来的任何不便,我们深表歉意。

保罗米耶迪

2019b对我不起作用。我使用了一个简单的GUIDE GUI,但它实际上只是创建了一个空白的App Designer GUI。我有一个列表框,按钮,单选框,复选框,编辑框,甚至是纯文本,但除了一个框架之外什么都没有出现(但在错误的地方)。我也有没有迁移的背景颜色。没有重大错误的报告。

Justin,迁移工具应该生成一个mlap文件并在App Designer中打开它。请联系技术支持support@mathworks.万博1manbetxcom或创建一个帮助票在//www.tianjin-qmedu.com/万博1manbetxsupport/contact_us.html.获得帮助。

Justin Kadow.

《App Designer Migration Tool for MATLAB指南》不起作用。当我浏览一个.fig文件并单击Migrate时,它似乎上传了一个文件,但是什么也没有发生。

Justin Kadow.

名叫Akanksha Mishra

dr

高科技人类

XIUFA阳

来自错误消息的Malgorzata,看来您可能已经遮蔽了“UIBUTTON”,它是一个用于创建按钮的MATLAB函数,并由迁移工具使用。要解决此问题,您可能需要从MATLAB路径中删除您的“UIBUTTON”功能,重命名,或放入MATLAB包。如果您需要进一步的帮助,请联系Support@mathworks.com或创建帮助票证万博1manbetx//www.tianjin-qmedu.com/万博1manbetxsupport/contact_us.html.

Malgorzata Florek.

嗨,我试图使用此工具与Matlab 2019,但在尝试迁移我的应用时出错。正如使用指南所做的旧应用程序非常复杂,并且代码可能被视为凌乱,我决定从指南模板(GUI带轴和菜单的GUI,创建一个非常简单的东西并创建了一个应用程序的东西。即使使用如此简单的应用程序,我也无法迁移它们,我会收到关于不正确的参数数量的错误,例如:
“错误使用uicontrol
输入参数错误数量不正确。

uibutton错误(第93行)
h = uicontrol(变长度输入宗量{:})

在appmigration.internal.GUIDEAppMigrationTool/createComponents错误(第165行)
App.migrateButton = Uibutton(app.uifigure,'推');

appmigration.internal.guideappmigrationTool / createComponents错误(第214行)
CreateComponents(应用程序)

appmigration.internal.convertGUIDEApp(13号线)
App.migrationAppInstance =
appmigration.internal.guideAppmigrationTool(varargin {:});

Guidfunc> LayoutExportAppDesigner(第1735行)中出错
appmigration.internal.convertGuideApp(文件名);

错误在guidefunc(第49行)
varargout = layoutexportappdesigner(varargin {:});“

任何问题可能是什么?

Vasishta,您使用扰乱/重叠布局的组件描述可能是一个错误,因为迁移工具应该几乎重新创建与指南应用程序相同的布局。请回复您使用的迁移工具的版本,以便确定我们如何提供帮助。您可以通过查看MATLAB命令的输出来获取版本>> MATLABSHARED.SUPPORTPKG.GETINStalled。万博1manbetx此外,在执行迁移时,您丢失了哪些图形组件?注意,具有可见性设置为OFF的组件仍然可见在指南中,但它们在App Designer Design View中显示不可见,因此可能是为什么它似乎缺少某些组件。

VBBV

谢谢你的迁移工具。
当我尝试从GUIDE迁移到App designer环境时,操作成功了,但是在布局上有很大的不同,缺少图形组件,混乱/重叠的弹出菜单,复选框等,与原来使用GUIDE创建的布局设计相比。
有人知道如何从GUIDE迁移到Appdesigner界面而不改变在GUIDE中创建的原始布局吗??任何帮助都将不胜感激。

约翰香肠

没有工具栏,就没有理由转到App Designer。我不敢相信他们会在没有这个的情况下发布新的GUI工具。
何苦?

汕头春杜

Umair,要安装迁移工具,启动App Designer,并从Designer选项卡中选择“打开”>“打开指南”到“应用程序设计器迁移”工具。单击出现的对话框中的“获取附加”。然后,附加资源管理器将启动并打开页面到迁移工具。单击“安装”以下载并安装该工具。如果您需要进一步的帮助,请联系support@mathworks.com或在“支持票"@MathWorks.com上联系安装和许可支持万博1manbetx//www.tianjin-qmedu.com/万博1manbetxsupport/contact_us.html.

Umair Rasool.

先生,我有点困惑如何为Matlab安装应用程序设计器迁移工具的指南。

成国栋李

罗马,请联系安装和许可支持以获取脱机安装迁移工具的帮助。万博1manbetx您可以在support@mathworks.com发送电子邮万博1manbetx件或者在帮助票证中发送电子邮件//www.tianjin-qmedu.com/万博1manbetxsupport/contact_us.html.

罗马Gorlov因此

您能否提供.mltbx格式或其他任何东西,我可以在为公司防火墙安装这个问题。

ShreePraSad Bhat.

Teodo.

格雷格,谢谢你的评论。指南为0 - 基于除基于1的像素外的所有单元。由于App Designer使用像素单元,因此迁移工具首先将所有单位转换为在执行迁移之前将所有单位转换为像素。因此,迁移工具没有必要将位置调整为1像素。

格雷格

FYI - 从R2016B发行说明 - “App Designer Component的位置属性在像素单元中使用1个原点。在R2016A中,App Designer组件使用了基于0的原点。”指南还使用基于0的原点。

此迁移工具不会将1添加到左/底部元素的位置。

Abhinav Gurram.

App Designer迁移工具指南可用于R2018A及更高版本。

TM hoogland

这个迁移工具兼容哪些版本的MATLAB ?
在R2016A中,我收到以下错误:'Matlab的App Designer迁移工具指南不适用于此版本的MATLAB'。假设迁移工具将在最近的版本之间互操作似乎合理。

格雷格,谢谢你把它带到我们的注意力。我们已将一些其他信息添加到描述中以帮助人们发现并使用该工具。

格雷格

我已经向Hearathwork提交了投诉,即该工具旁边是不可能发现的(弄清楚如何在安装后启动)。这是技巧:

方法#1:
1)执行MATLAB命令“指南”
2)在“GUIDE Quick Start”对话框中,导航到“Open Existing GUI”选项卡
3)按下按钮“迁移到App Designer ...”

方法#2:
1)在GUIDE UI设计环境中打开一个你已经创建的基于GUIDE的应用程序/图形。
2)选择“文件 - >迁移到App Designer ...”

方法#3:
1)启动AppDesigner
2)打开 - >应用程序设计器迁移工具的打开指南...

方法#4:
>> appmigration.internal.guideappmigrationTool.

Tara,该工具是指MATLAB R2018a和更高。

塔拉普拉斯德米什拉

我得到一个错误安装这个包。这个错误说,“这个包不支持您的操作系统或MATLAB版本。”万博1manbetx我使用的是Matlab的Windows 8.1和2017b。

Jandongξ

黎明河红齐

凯文·李

克里斯门户

Matlab释放兼容性
用R2018A创建
兼容R2018a到R2021a
平台的兼容性
视窗 苹果系统 Linux

社区宝藏狩猎

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!