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