登录论坛

查看完整版本 : [MATLAB GUI] 求助:如何编写可接受输入的编辑框


kuca
2009-05-07, 11:02
想写一个在编辑框中输入频率 就会产生相应波形的图像
有部分程序 不过不知道可接受输入的编辑框如何写 各位帮忙

>> clf reset
H=axes('unit','normalized','position',[0,0,1,1],'visible','off');
set(gcf,'currentaxes',H);
str='\fontname{隶书}波形曲线';
text(0.12,0.93,str,'fontsize',25);
h_fig=get(H,'parent');
set(h_fig,'unit','normalized','position',[0.1,0.2,0.7,0.4]);
h_axes=axes('parent',h_fig,...
'unit','normalized','position',[0.1,0.15,0.55,0.7],...
'xlim',[0 2],'ylim',[-1.5 1.5],'fontsize',8);
h_text=uicontrol(h_fig,'style','text',...
'unit','normalized','position',[0.67,0.73,0.25,0.14],...
'horizontal','left','string',{'输入频率','h ='});

yhcode
2009-05-07, 12:00
看看str2num之类的函数,还有eval等

kuca
2009-05-07, 13:48
楼上的高手 能不能帮忙写一下啊

kuca
2009-05-07, 13:49
高手能不能帮我写一下

yhcode
2009-05-07, 19:55
你的程序是哪里得到的?或者说是哪个年代的书上写的?现在的GUI编程很方便的,在界面放上个编辑框,在它的callback函数里用str2double就可以了,如:
function edittext1_Callback(hObject, eventdata, handles)
user_entry = str2double(get(hObject,'string'));
if isnan(user_entry)
errordlg('You must enter a numeric value','Bad Input','modal')
end