While loop for a menu

6 次查看(过去 30 天)
TS
TS 2015-5-3
options=menu('Options','Report Quadrants','Plot Data','Avg. Dist.','Max Dist.','Print Ascii','Exit Program')
while (true) options<6
options=menu('Options','Report Quadrants','Plot Data','Avg. Dist.','Max Dist.','Print Ascii','Exit Program')
for options=6
break
end
end
I'm trying to create a while loop for a menu in order to have it remain until "exit program" is selected from the options menu. Somethings incorrect because the options value goes to 0 after the first choice.

采纳的回答

Nobel Mondal
Nobel Mondal 2015-5-3
In my opinion, the proper way of doing this would be - using call-back functions. Please have a look if this documentation helps you. There are a few relevant examples as well.
doc uimenu
Please let me know, if this is not applicable for any specific requirement that you have.

更多回答(2 个)

Image Analyst
Image Analyst 2015-5-4
You could do this:
buttonNumber = 1; % Initialize
while buttonNumber < 6
buttonNumber = menu('Options','Report Quadrants','Plot Data',...
'Avg. Dist.','Max Dist.','Print Ascii','Exit Program')
if buttonNumber == 6
break; % Get out of the loop
end
% else do stuff based on buttonNumber
end

Paulo Almeida
Paulo Almeida 2017-11-13
Due to respect of this topic, i want to create a submenu inside one of the options, and when the user press "exit/back" ir returns t the previous menu (original one). It works just fine until i press "back" in the submenu option and it seems to enter in an infinite loop and it can't get out of the submenu.
  1 个评论
Image Analyst
Image Analyst 2017-11-13
Paulo, this link will solve your problems with your code https://blogs.mathworks.com/videos/2012/07/03/debugging-in-matlab/ Since only you have your code, not us, we can't solve your problem directly. But that link will definitely allow you to solve it yourself.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by