文件导航已实现请看我的回帖,但是现在小女子又遇到新问题了
我设计的图上有三个'radio'类型的控件<BR><FONT color=#ff3300>function Step(sheme)</FONT><BR>.......<BR><FONT color=#f73809>case1<BR></FONT> radio_AngleCurve=uicontrol(h_fig,'style','radio',...<BR> 'position',,...<BR> 'Units','normalized', ...<BR> 'string','Angle Curve',...<BR> 'BackgroundColor',,...<BR> 'callback','Step(''test1'')');<BR><BR> radio_SpeedCurve=uicontrol(h_fig,'style','radio',...<BR> 'position',,...<BR> 'Units','normalized', ...<BR> 'string','Speed Curve',...<BR> 'BackgroundColor',,...<BR> 'callback','Step(''test2'')');<BR><BR> radio_VoltageCurve=uicontrol(h_fig,'style','radio',...<BR> 'position',,...<BR> 'string','Voltage Curve',...<BR> 'Units','normalized', ...<BR> 'BackgroundColor',,...<BR> 'callback','Step(''test3'')');<BR> <FONT color=#f73809>case'test1'</FONT><BR> x=1:1:10;<BR> y=x;<BR> plot(x,y)<BR> <FONT color=#f73809>case'test2'</FONT><BR> x=0:pi/50:2*pi<BR> y=sin(x);<BR> plot(x,y);<BR> <FONT color=#f76809>case'test3'<BR></FONT> x=0:pi/50:2*pi<BR> y=cos(x);<BR> plot(x,y);<BR> <FONT color=#f70909>end<BR></FONT>一般书上都讲了两个的情况,如何点击一个''无线电''使小圆圈点黑,使另外一个''无线电''按钮圆心为空<BR><BR>但是我现在有三个这样的东东,不知道怎么才能点击一个的时候调用需要的图行,不被点击而点击别的''无线电''按钮时小圆圈自动转为空心.<BR><BR><FONT color=#113dee>拜托各位了,急用呢,在线等各位大虾!</FONT> 都是一个道理<BR>方法1:<BR>假设hr1-hr3为三个radio句柄:<BR>'set(hr1,''value'',get(hr1,''max'')),',...%选中小圆圈点黑<BR>'set(hr2,''value'',get(hr2,''min'')),',...%将互斥选项2点白<BR>'set(hr3,''value'',get(hr3,''min'')),',...%将互斥选项3点白<BR>方法2:<BR>uibuttongroup(v7以上)<BR>h = uibuttongroup('Position',);<BR>u0 = uicontrol('Style','Radio','String','Option 1',...<BR> 'pos',,'parent',h);<BR>u1 = uicontrol('Style','Radio','String','Option 2',...<BR> 'pos',,'parent',h);<BR>u2 = uicontrol('Style','Radio','String','Option 3',...<BR> 'pos',,'parent',h);<BR>具体callback如何写看看帮助里的实例即可,无需多说。<BR> 二楼说的精到,一楼尽可尝试回复:(bainhome)都是一个道理方法1:假设hr1-hr3为...
<P><FONT color=#ff0000>按照二楼的意见,修改为,但是运行结果不对的哦!</FONT> <BR>radio_AngleCurve=uicontrol(h_fig,'style','radio',...<BR> 'Units','normalized', ... <BR> 'position',,...<BR> 'string','Angle Curve',...<BR> 'BackgroundColor',,...<BR> 'callback',['Step_3(''test1'')',...<BR> 'set(radio_AngleCurve,''value'',1)',...<BR> 'set(radio_SpeedCurve,''value'',0)',...<BR> 'set(radio_VoltageCurve,''value'',0)']);<BR><BR><FONT color=#f73809>结果还是不行的啊,还返回错误为:</FONT><BR>??? Error: Missing operator, comma, or semicolon.</P><P>??? Error while evaluating uicontrol Callback.<BR><BR><FONT color=#0909f7>大虾们在帮我看看的啦</FONT></P> ??? Error: Missing operator, comma, or semicolon.<BR>什么缺个逗号分号的语法错误和radio有什么关系?callback里语句连分隔符都不用,当然提示错误!
回复:(bainhome)??? Error: Missing operator, com...
<P>后来我改过来了,还是不正确的哦<BR>而且错误更奇怪了:<BR>??? Undefined function or variable 'radio_AngleCurve'.</P><P>??? Error while evaluating uicontrol Callback.</P>
回复:(bainhome)??? Error: Missing operator, com...
请高手指点................ <P>显然是参数和句柄在不同子程序之间传递的问题,一句两句根本说不清,自己去找找GUI句柄如何在子程序之间传递调用的书籍和帮助看看<BR>=================================================<BR>关于handles: <BR>实际上这个handles是MATLAB中GUI编程中最常用的一个句柄管理变量。 <BR>handles的生成:handles = guihandles( figurehandle );将figure中所有对象中“Tag”属性有值的句柄的handle采集在一起。handles是结构名,每个“Tag”域名里保持此对象的句柄。 <BR>handles的保存:guidata( figurehandle, handles );handles将保存在figure对象的“ApplicationData”的一个域名里。 <BR>handles的使用:handles = guidata( h );其中为figure中任意一个对象的句柄。 <BR>handles.SpeechSourceGui可能是一个figure的句柄,“userdata”是一个对象的属性,可以在其中存取任何数据。但是我不怎么用它,一则它只能存一个变量;二则它无法存入变量的名字,很难区分。 <BR>=================================================<BR>cwit原来写过一个函数结构与参数传递的帖子,上述为其中相关的一部分,仔细琢磨一下guidata和guihandles两个命令的用法吧。否则,你以为“奇怪”其实却再理所当然不过的错误你会一犯再犯。因为这个问题超过了你问的这个帖子主题当初的范围,不再多说。good luck!</P>
页:
[1]