我有一个没有GUIDE的特定GUI,只是普通的旧uicontrols,到目前为止,我已经使一切正常工作。但是我想在按下按钮时在文本框(编辑)中获取值并将其存储到变量fi中。
基本上是相关代码;
c2 = uicontrol(f,'Style', 'pushbutton','String','Rotation','Callback',
@rotation);
s1 = uicontrol(f,'Style', 'edit');
function rotation(src,event)
load 'BatMan.mat' X
fi = %This is the value I want to have the value as the edit box.
subplot(2,2,1)
PlotFigure(X)
end
答案 0 :(得分:1)
最简单的方法是通过输入参数让rotation
了解s1
:
c2 = uicontrol(f,'Style', 'pushbutton','String','Rotation');
s1 = uicontrol(f,'Style', 'edit');
set(c2,'Callback',@(src,event)rotation(s1,src,event));
function rotation(s1,src,event)
load 'BatMan.mat' X
fi = get(s1,'String');
subplot(2,2,1)
PlotFigure(X)
end
在这里,我们将c2
的回调设置为具有正确签名(2个输入参数)的匿名函数,并使用rotation
作为附加参数调用s1
。现在,回调函数中已嵌入句柄s1
。