如何使用子程序在subroutins GUI功能?

9的观点(30天)
如果我在一个GUI功能函数,它可以访问GUI的全局变量,所以我可以使用它像一个子程序。但是我怎么能使用相同的函数在另一个函数?因为如果我将它嵌入到另一个函数,它已经“无法识别的函数或变量”说。快捷键我想使用子程序即使在子例程。我怎么能这样做呢?

答案(2)

沃尔特·罗伯森
另一个你的问题意味着你正在使用指南,或手工打造你的代码,特别是你不使用应用程序设计师。如果你一直使用应用程序设计师就会被强制通过父母在构建uicontrol ()
如果您正在使用指南,然后指导总是构建m文件表单
函数NAMEOFPROJECT(变长度输入宗量)
%很多评论
一些初始化代码
函数NAMEOFCALLBACK (hObject、事件处理)
%很多评论
一些代码
等等。注意到没有 结束 语句匹配 函数 当指导构建代码行。
你只能构建函数在其他函数(嵌套函数)当你有功能 结束 行匹配 函数 行。例如如果代码结构
函数NAMEOFPROJECT(变长度输入宗量)
%很多评论
一些初始化代码
结束
函数NAMEOFCALLBACK (hObject、事件处理)
%很多评论
一些代码
输出= NESTEDFUNCTION(参数)
函数NESTEDFUNCTION(参数)
%这是NAMEOFCALLBACK里面
嵌套的代码
结束
结束
如果你hand-convert每个 函数 在指导》m文件匹配 结束 然后您可以添加嵌套函数。然而,导游不能管理代码的设计,所以你不能使用指南开发代码之后。
定义一个嵌套的函数时,嵌套函数只能调用从内部外部函数——除非,也就是说,一些外部管理处理嵌套函数( 理由有时设计模式。)
如果你创建一个函数文件,定义了多种功能,如我上面列出的初始代码,然后只 第一个 函数在函数文件可以直接从任何其他函数调用文件,除非在某种程度上的其他函数得到一个处理额外的功能。这可能是一个限制,所以导游工作问题的发生,第一个函数(在本例中NAMEOFPROJECT)期望一个特征向量作为第一个参数,得到它时,调用函数的名称 内部 m文件。因为它被称为在定义文件,MATLAB是能够找到的函数。这种设计模式有时被称为“调车场”
如果您创建了一个m文件,不开始 函数 classdef 然后,m文件被认为是“脚本”文件。R2015b以来,脚本文件已经能够定义函数脚本后,提供的功能有一个匹配 结束 声明。这些函数有相同的限制作为一个函数文件附加功能,他们只能从内部被称为相同的文件(除非外部管理处理函数。)
所以…如果你想定义一群实用程序例程,可以从多个调用。m文件,然后创建一个函数m文件为每个实用程序。
…和不使用 全球 除非你是与一些代码需要全局变量和停止使用全局变量不能被合理修改。 全球 是最慢的方式来访问变量和犯错的风险最大,是很难找到。

大连
大连 12分钟前
加,当调用s = SerialDataRead (hObject eventdata,处理、串口);当使用功能,您还可以修改轴在GUI,例如设置坐标轴范围和开放网格,所有这一切都很好。
当我画在串口的回调函数,它不能影响到GUI
手柄不通过连续回调函数,所以目前的问题是如何将参数传递给连续回调函数?

类别

找到更多的在迁移向导的应用帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!