what does this error mean and why cant i use the if function i use it in another function and it worked

1 view (last 30 days)
  3 Comments
Jan
Jan on 13 Jan 2023
@jana: You still post your code as screen shots in following questions.
Attaching the mlapp file is less useful, if a user is working in the forum without having access to Matlab. Again: Please post the readable sourcecode of the text instead. Thanks.

Sign in to comment.

Accepted Answer

Cameron
Cameron on 12 Jan 2023
Edited: Cameron on 12 Jan 2023
You need to close your if statement. You can't leave it without putting "end" to signify where the if statement stops
if %some if statement
end %you need this
so put end on line 703
  4 Comments
Cameron
Cameron on 12 Jan 2023
The purpose of your initial question was to determine why your code wasn't working. A couple of us have pointed out that it was a missing end statement. Now that it is running, you should be able to adjust it according to your needs. I don't know what you're trying to do, but I've combined some of your if statements below. If you have further questions, please create a new thread about what your new problem is.
function EditFieldValueChanged(app, event)
value = app.EditField.Value;
app.Gauge.Value=value;
app.TempEffect=app.Modified;
if value>100
a=app.Modified;
I=imshow(a>100,'parent',app.UIAxes2,...
'XData',[1 app.UIAxes2.Position(3)],...
'YData',[1 app.UIAxes2.Position(4)]);
app.UIAxes2.XLim=[0 I.XData(2)];
app.UIAxes2.YLim=[0 I.YData(2)];
I=imshow(app.Modified,'parent',app.UIAxes3,...
'XData',[1 app.UIAxes3.Position(3)],...
'YData',[1 app.UIAxes3.Position(4)]);
app.UIAxes3.XLim=[0 I.XData(2)];
app.UIAxes3.YLim=[0 I.YData(2)];
end
if value<100
a=(app.Modified);
I=imshow(a<100,'parent',app.UIAxes2,...
'XData',[1 app.UIAxes2.Position(3)],...
'YData',[1 app.UIAxes2.Position(4)]);
app.UIAxes2.XLim=[0 I.XData(2)];
app.UIAxes2.YLim=[0 I.YData(2)];
end
app.Exit=1;
end

Sign in to comment.

More Answers (1)

Steven Lord
Steven Lord on 12 Jan 2023
The end keyword on line 705 closes the if statement on line 689.
The end keyword on line 706 closes the function definition on line 685.
You cannot start a new methods block on line 709 without first closing the previous methods block (which starts somewhere above the start of the code in your picture.
Add an end statement on line 707. If you click on that end statement (or any end statement) I believe MATLAB should show you the keyword with which that end statement is associated. Similarly if you click on the methods keyword (or if or keyboard or ...) MATLAB should show you the corresponding end.

Categories

Find more on Develop Apps Using App Designer in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!