Error in calculation code

1 次查看(过去 30 天)
sha
sha 2012-11-6
Hi there,
i have created a 3 text and a button in gui. once u click on the button, the calculation for the 3 text will be process and the final result will appear. And i wanted to do so 3 times. and the final result will appear at 3 individual box. however i have an error. here's my code :
-----------------------------------------------------------
global calculationflag;
if calcultionflag ==0
p = str2num(get (handles.load, 'String'));
d = str2num(get (handles.diameter, 'String'));
n = str2num(get (handles.fringe, 'String'));
f = ( (8 * p ) / (pi * d * n));
set(handles.result1, 'String', f);
calculationflag = calculationflag+1;
else if calculationflag ==1
p = str2num(get (handles.load, 'String'));
d = str2num(get (handles.diameter, 'String'));
n = str2num(get (handles.fringe, 'String'));
f = ( (8 * p ) / (pi * d * n));
set(handles.result2, 'String', f);
calculationflag = calculationflag+1;
else if calculationflag ==2
p = str2num(get (handles.load, 'String'));
d = str2num(get (handles.diameter, 'String'));
n = str2num(get (handles.fringe, 'String'));
f = ( (8 * p ) / (pi * d * n));
set(handles.result3, 'String', f);
calculationflag=0;
end
--------------------------------------
Thanks!
  2 个评论
Walter Roberson
Walter Roberson 2012-11-6
What error do you observe, and on what line?
sha
sha 2012-11-6
i have edited the command. the 'elseif' need to be in one word. However. after doing so, it didnt work. there is no error at all. but no calculation has been done.
Any suggestion? thanks fr the reply!

请先登录,再进行评论。

回答(1 个)

Walter Roberson
Walter Roberson 2012-11-6
编辑:Walter Roberson 2012-11-6
persistent calculationflag
if isempty(calculationflg); calculationflag = 0; end
p = str2num(get (handles.load, 'String'));
d = str2num(get (handles.diameter, 'String'));
n = str2num(get (handles.fringe, 'String'));
f = ( (8 * p ) / (pi * d * n));
fstring = num2str(f);
switch calculationflag
case 0: set(handles.result1, 'String', fstring);
case 1: set(handles.result2, 'String', fstring);
case 2: set(handles.result3, 'String', fstring);
end
calculationflag = mod(calculationflag+1, 3);
  3 个评论
sha
sha 2012-11-6
my bad! after doing so, i could only manage to do 1 time. and has an error after clicking the button fr 2nd times!
this are the error:
---------------------------------
??? Error while evaluating uicontrol Callback
??? One or more output arguments not assigned during call to "set".
Error in ==> New>calculationPushbutton_Callback at 504 case 0: set(handles.result1, 'String', fstring);
Error in ==> gui_mainfcn at 96 feval(varargin{:});
Error in ==> New at 42 gui_mainfcn(gui_State, varargin{:});
Error in ==> @(hObject,eventdata)New('calculationPushbutton_Callback',hObject,eventdata,guidata(hObject))
??? Error while evaluating uicontrol Callback
---------------------------------------

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Migrate GUIDE Apps 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by