Create a Warning in GUI if statement

8 views (last 30 days)
Sean
Sean on 17 May 2016
Answered: Image Analyst on 17 May 2016
Hi,
I'm trying to create a warning in a GUI I wrote, if all values in a column of a cell array are greater than a number display a warning.
I've tried this but it isn't working
if c{:,2}>10
warndlg('string')
end
Any help is appreciated.
  1 Comment
dpb
dpb on 17 May 2016
What does "not working" mean, precisely? The construct appears it should be fine. Is the array _c_ in context to the callback, perhaps?

Sign in to comment.

Answers (2)

Walter Roberson
Walter Roberson on 17 May 2016
if all(cellfun(@(C) ~isempty(C) && isnumeric(C) && all(C(:) > 10), c(:,2) ))
warndlg('string')
end
I have made the assumption here that items that are not numeric should not be counted as being > 10, and the additional assumption that empty cells are not to be counted as being > 10. However, in either of those cases, since the cell would not be counted as having a value greater than 10, it would not be true that all the values in the cell array column were greater than 10 so no warning would be produced.
I did not assume that the entries in the cell array were all the same size or the same number of dimensions.

Image Analyst
Image Analyst on 17 May 2016
Tip: to have it wait for you to click OK, wrap the warndlg() in a uiwait():
uiwait(warndlg('Hey, you really messed up!!!')); % Wait for user to click OK.
Otherwise it goes blasting ahead without waiting.

Categories

Find more on Interactive Control and Callbacks in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!