|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
<P>有两个M文件,a.mt和b.m,代码如下:<BR>a.m:<BR>global x1;<BR>clf reset % <1> <BR>set(gcf,'unit','normalized','position',[0.1,0.4,0.85,0.35]);%设置图形窗大小 <BR>set(gcf,'defaultuicontrolunits','normalized'); <BR>set(gcf,'defaultuicontrolfontsize',11); <BR>set(gcf,'defaultuicontrolfontname','隶书'); <BR>set(gcf,'defaultuicontrolhorizontal','left'); <BR>set(gcf,'menubar','none'); %删除图形窗工具条 <BR>str='通过指令显示图的交互界面'; <BR>set(gcf,'name',str,'numbertitle','off'); %书写图形窗名 <BR>h_axes=axes('position',[0.05,0.15,0.45,0.70],'visible','off');%定义轴位框位置 <BR>uicontrol(gcf,'Style','text',... %制作静态文本框 <BR>'position',[0.52,0.87,0.26,0.1],... <BR>'String','gamma输入框'); </P>
<P>x1=imread('111.bmp');<BR>hedit=uicontrol(gcf,'Style','edit',... %制作可编辑文本框 <14> <BR>'position',[0.52,0.75,0.26,0.1]); </P>
<P>hpush=uicontrol(gcf,'Style','push',... %制作与列表框配用的按键 <24> <BR>'position',[0.56,0.05,0.18,0.15],'string','Apply'); </P>
<P>set(hedit,'callback','bb(hedit)'); %编辑框输入引起回调 <26> <BR><BR><BR>b.m:<BR>function bb(hedit) <BR>global x1;<BR>ct=get(hedit,'string'); %获得输入的字符串函数 <2><BR>string1= 'g=imadjust(x1,[0.25,0.6],[],';<BR>string2=');';<BR>user_entry=[string1,ct,string2];<BR>if ~isempty(ct) %可编辑框输入非空时 <5> <BR>eval(user_entry) %运行从编辑文本框送入的指令 <6> <BR>end<BR>figure,imshow(g)<BR><BR>这样运行后显示正确,但是如果我将a.m的纯脚本改为函数就出错,即我在a.m的最前面加了function aa(),后面的代码不变,运行之后出现如下的错误:<BR>>> aa<BR>??? Undefined function or variable 'hedit'.</P>
<P>??? Error while evaluating uicontrol Callback.<BR><BR>请问这是怎么回事,谢谢!!</P> |
|